*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:#333;line-height:1.6;background:#fff}ul{padding-left:0;margin-bottom:1rem;list-style:none}ul li{position:relative;padding-left:1.5rem}ul li::before{content:"* ";color:#2e7945;font-weight:bold;position:absolute;left:0;top:0.1em}ul li ul{margin-top:0.5rem;margin-bottom:0.5rem;padding-left:1.5rem}ol{padding-left:2rem;margin-bottom:1rem;list-style-position:outside}ol ol{margin-top:0.5rem;margin-bottom:0.5rem;padding-left:2rem}em,i{color:#7c3aed;font-style:italic}.zola-anchor{display:none !important}.accent-green{color:#2e7945;font-weight:bold}.accent-orange{color:#d97706;font-weight:bold}.accent-blue{color:#2563eb;font-weight:bold}.accent-purple{color:#7c3aed;font-weight:bold}.accent-red{color:#dc2626;font-weight:bold}.accent-teal{color:#0d9488;font-weight:bold}.container{max-width:700px;margin:0 auto;padding:0 1rem}@media (max-width: 768px){.container{padding:0 1rem}}.site-header{margin-bottom:3rem}.site-header .header-bar{height:3px;background:repeating-linear-gradient(to right, #2e7945 0px, #2e7945 10px, transparent 10px, transparent 12px);margin-bottom:1rem}.site-header .site-nav{display:flex;gap:1.5rem}.site-header .site-nav .nav-link{color:#2e7945;text-decoration:underline;text-decoration-color:#2e7945;font-family:"Courier New",Courier,monospace;font-weight:600}.intro-box{border:3px solid #2e7945;padding:2rem;margin-bottom:3rem;background:#fafafa}.intro-box h1,.intro-box h2{font-family:"Courier New",Courier,monospace;font-weight:700;margin-bottom:1rem;color:#333}.intro-box h1{font-size:2rem}.intro-box p{margin-bottom:1rem}.intro-box p:last-child{margin-bottom:0}.intro-box a{color:#2e7945;text-decoration:underline;text-decoration-color:#2e7945}.blog-list h2{font-family:"Courier New",Courier,monospace;font-size:1.5rem;font-weight:700;color:#2e7945;margin-bottom:0.5rem}.blog-list .blog-separator{height:2px;background:repeating-linear-gradient(to right, #2e7945 0px, #2e7945 5px, transparent 5px, transparent 10px);margin-bottom:1.5rem}.blog-list .blog-item{margin-bottom:1.5rem}.blog-list .blog-item .blog-meta{font-family:"Courier New",Courier,monospace;font-size:0.9rem;color:#666;margin-bottom:0.25rem}.blog-list .blog-item .blog-meta .blog-sep{margin:0 0.5rem}.blog-list .blog-item .blog-title{font-size:1.1rem;font-weight:600}.blog-list .blog-item .blog-title a{color:#333;text-decoration:none}.blog-list .blog-item .blog-title a:hover{color:#2e7945}@media (max-width: 768px){.intro-box{padding:1.5rem}}.blog-page h1{font-family:"Courier New",Courier,monospace;font-size:2rem;font-weight:700;color:#2e7945;margin-bottom:1rem}.blog-page .blog-intro{margin-bottom:2rem}.blog-page .blog-intro p{margin-bottom:1rem}.blog-page .blog-intro p:last-child{margin-bottom:0}.blog-page .blog-separator{height:2px;background:repeating-linear-gradient(to right, #2e7945 0px, #2e7945 5px, transparent 5px, transparent 10px);margin-bottom:1.5rem}.blog-page .blog-item{margin-bottom:1.5rem}.blog-page .blog-item .blog-meta{font-family:"Courier New",Courier,monospace;font-size:0.9rem;color:#666;margin-bottom:0.25rem}.blog-page .blog-item .blog-meta .blog-sep{margin:0 0.5rem}.blog-page .blog-item .blog-title{font-size:1.1rem;font-weight:600}.blog-page .blog-item .blog-title a{color:#333;text-decoration:none}.blog-page .blog-item .blog-title a:hover{color:#2e7945}.blog-post .post-header{margin-bottom:2rem}.blog-post .post-header h1{font-family:"Courier New",Courier,monospace;font-size:2rem;font-weight:700;margin-bottom:0.5rem}.blog-post .post-header .post-meta{font-family:"Courier New",Courier,monospace;font-size:0.9rem;color:#666}.blog-post .post-header .post-meta .blog-sep{margin:0 0.5rem}.blog-post .toc{background:transparent;border:1px solid #e1e4e8;border-radius:5px;padding:1.5rem;margin-bottom:3rem}.blog-post .toc h2{margin-top:0 !important;font-size:0.9rem;color:#666;margin-bottom:1rem;text-transform:uppercase;letter-spacing:0.05em}.blog-post .toc ul{padding-left:0;list-style:none}.blog-post .toc ul li{padding-left:0;margin-bottom:0.25rem}.blog-post .toc ul li::before{content:none}.blog-post .toc ul li a{color:#666;text-decoration:none;font-size:0.95rem}.blog-post .toc ul li a:hover{color:#2e7945}.blog-post .toc ul ul{margin-top:0.5rem;padding-left:1.5rem}.blog-post .post-content h1,.blog-post .post-content h2,.blog-post .post-content h3,.blog-post .post-content h4,.blog-post .post-content h5,.blog-post .post-content h6{font-family:"Courier New",Courier,monospace;margin-bottom:1rem;font-weight:700;position:relative}.blog-post .post-content h1:hover .zola-anchor,.blog-post .post-content h1 .zola-anchor:hover,.blog-post .post-content h2:hover .zola-anchor,.blog-post .post-content h2 .zola-anchor:hover,.blog-post .post-content h3:hover .zola-anchor,.blog-post .post-content h3 .zola-anchor:hover,.blog-post .post-content h4:hover .zola-anchor,.blog-post .post-content h4 .zola-anchor:hover,.blog-post .post-content h5:hover .zola-anchor,.blog-post .post-content h5 .zola-anchor:hover,.blog-post .post-content h6:hover .zola-anchor,.blog-post .post-content h6 .zola-anchor:hover{visibility:visible}.blog-post .post-content h1 .zola-anchor,.blog-post .post-content h2 .zola-anchor,.blog-post .post-content h3 .zola-anchor,.blog-post .post-content h4 .zola-anchor,.blog-post .post-content h5 .zola-anchor,.blog-post .post-content h6 .zola-anchor{display:flex !important;visibility:hidden;color:#999;text-decoration:none;font-weight:normal;opacity:0.6;position:absolute;left:-1.5rem;width:1.5rem;height:100%;align-items:center;font-size:0}.blog-post .post-content h1 .zola-anchor::after,.blog-post .post-content h2 .zola-anchor::after,.blog-post .post-content h3 .zola-anchor::after,.blog-post .post-content h4 .zola-anchor::after,.blog-post .post-content h5 .zola-anchor::after,.blog-post .post-content h6 .zola-anchor::after{content:"#";font-size:1.25rem}.blog-post .post-content h1 .zola-anchor:hover,.blog-post .post-content h2 .zola-anchor:hover,.blog-post .post-content h3 .zola-anchor:hover,.blog-post .post-content h4 .zola-anchor:hover,.blog-post .post-content h5 .zola-anchor:hover,.blog-post .post-content h6 .zola-anchor:hover{color:#2e7945;opacity:1}.blog-post .post-content h1,.blog-post .post-content h2{margin-top:4rem}.blog-post .post-content h2{font-size:1.5rem}.blog-post .post-content h3{font-size:1.25rem;margin-top:3rem}.blog-post .post-content h4,.blog-post .post-content h5,.blog-post .post-content h6{margin-top:2rem}.blog-post .post-content p{margin-bottom:1rem}.blog-post .post-content a{color:#2e7945;text-decoration:underline;text-decoration-color:#2e7945}.blog-post .post-content code{font-family:"Courier New",Courier,monospace;background:#f4f4f4;padding:0.2rem 0.4rem;border-radius:3px;font-size:0.9em}.blog-post .post-content .code-block-wrapper{position:relative;margin-top:1.5rem;margin-bottom:1rem}.blog-post .post-content .code-block-wrapper .code-lang-tag{position:absolute;top:0.25rem;right:0.25rem;font-size:0.75rem;font-weight:700;font-family:"Courier New",Courier,monospace;color:#333;padding:0.3rem 0.3rem;border-bottom-left-radius:5px;text-transform:uppercase;z-index:1}.blog-post .post-content pre{background:#f6f8fa;padding:1rem;border-radius:5px;overflow-x:auto;margin:0;border:1px solid #e1e4e8}.blog-post .post-content pre code{background:none;padding:0}.blog-post .post-content blockquote{border-left:4px solid #2e7945;padding-left:1rem;margin:1rem 0;color:#666;font-style:italic}.blog-post .post-content img{max-width:100%;height:auto;display:block;margin:1rem 0;border:1px solid #ddd;border-radius:8px}.blog-post .post-content table{width:100%;border-collapse:collapse;margin-bottom:1rem}.blog-post .post-content table th,.blog-post .post-content table td{border:1px solid #ddd;padding:0.5rem;text-align:left}.blog-post .post-content table th{background:#f4f4f4;font-weight:600}.blog-post .post-footer{margin-top:3rem;padding-top:2rem;border-top:2px dotted #ddd}.blog-post .post-footer .back-link{color:#2e7945;text-decoration:underline;text-decoration-color:#2e7945;font-family:"Courier New",Courier,monospace}@media (max-width: 768px){.blog-post .post-header h1{font-size:1.5rem}}
