*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--font-body: "Arial", sans-serif;--font-mono: monospace;--c-bg: #fdfdfd;--c-text: #1a1a1a;--c-text-muted: #737373;--c-border: #e5e5e5;--c-accent: #0969da;--c-code-bg: #f6f8fa;--c-link: #0969da;--max-w: 660px}[data-theme=dark]{--c-bg: #0b0d13;--c-text: #e4e4e7;--c-text-muted: #a1a1aa;--c-border: #2e2e33;--c-accent: #58a6ff;--c-code-bg: #1e1e22;--c-link: #58a6ff}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);color:var(--c-text);background:var(--c-bg);line-height:1.65;min-height:100vh;display:flex;flex-direction:column;transition:color .2s,background-color .2s}header{padding:1.5rem 1.5rem 0;max-width:var(--max-w);width:100%;margin:0 auto}header nav{display:flex;align-items:center;justify-content:space-between}.site-name{font-family:var(--font-mono);font-size:.8rem;font-weight:500;text-decoration:none;color:var(--c-text-muted)}.site-name:hover{color:var(--c-text)}main{flex:1;max-width:var(--max-w);width:100%;margin:0 auto;padding:1.75rem 1.5rem 4rem}center a{color:var(--c-link);text-decoration:none}center a:hover{text-decoration:underline}.theme-toggle{background:none;border:1px solid var(--c-border);border-radius:6px;cursor:pointer;padding:.3rem .45rem;color:var(--c-text-muted);font-size:1rem;line-height:1;transition:color .2s,border-color .2s}.theme-toggle:hover{color:var(--c-text);border-color:var(--c-text-muted)}footer{max-width:var(--max-w);width:100%;margin:0 auto;padding:1.5rem;border-top:1px solid var(--c-border);color:var(--c-text-muted);font-family:var(--font-mono);font-size:.75rem}.prose h1{font-size:1.55rem;font-weight:600;line-height:1.3;margin-bottom:.2rem;letter-spacing:-.02em}.prose h2{font-size:1.2rem;font-weight:600;margin-top:2.25rem;margin-bottom:.6rem;letter-spacing:-.01em}.prose h3{font-size:1rem;font-weight:600;margin-top:1.75rem;margin-bottom:.4rem}.prose p{margin-bottom:1.1rem}.prose a{color:var(--c-link);text-decoration:none}.prose a:hover{text-decoration:underline}.prose ul,.prose ol{margin-bottom:1.1rem;padding-left:1.4rem}.prose li{margin-bottom:.3rem}.prose blockquote{border-left:2px solid var(--c-border);padding-left:1rem;margin:1.25rem 0;color:var(--c-text-muted)}.prose img{max-width:100%;height:auto;border-radius:4px;margin:1.25rem 0}.prose hr{border:none;border-top:1px solid var(--c-border);margin:2rem 0}.prose code{font-family:var(--font-mono);font-size:.85em;background:var(--c-code-bg);padding:.15em .35em;border-radius:3px}.prose pre{border:1px solid var(--c-border);border-radius:5px;padding:.9rem 1rem;overflow-x:auto;margin:1.25rem 0;line-height:1.5}[data-theme=dark] .prose pre{background-color:var(--c-code-bg)!important}[data-theme=dark] .prose pre code span{color:var(--shiki-dark)!important}.prose pre code{background:none;padding:0;border-radius:0;font-size:.82rem}.prose table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.9rem}.prose th,.prose td{text-align:left;padding:.45rem .7rem;border-bottom:1px solid var(--c-border)}.prose th{font-weight:600;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-muted)}.index ul{list-style:none}.index li{padding:.75rem 0}.index li+li{border-top:1px solid var(--c-border)}.index a{text-decoration:none;color:var(--c-text);display:flex;align-items:baseline;gap:.75rem}.index a:hover .title{color:var(--c-accent)}.index time{font-family:var(--font-mono);font-size:.75rem;color:var(--c-text-muted);flex-shrink:0}.index .title{font-size:.95rem;font-weight:500;line-height:1.4}.index .desc{color:var(--c-text-muted);font-size:.85rem;margin-top:.15rem;padding-left:calc(.75rem + 5.5ch);line-height:1.45}.index .empty{color:var(--c-text-muted)}.index .empty code{font-family:var(--font-mono);font-size:.82rem;background:var(--c-code-bg);padding:.15em .35em;border-radius:3px}@media(max-width:500px){.index a{flex-direction:column;gap:.1rem}.index .desc{padding-left:0}}.post-header{margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--c-border)}.meta{font-family:var(--font-mono);font-size:.78rem;color:var(--c-text-muted);margin-top:.4rem}.meta .author{margin-left:.15rem}.tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.6rem}.tag{font-family:var(--font-mono);font-size:.7rem;background:var(--c-code-bg);padding:.15em .5em;border-radius:3px;color:var(--c-text-muted)}.back{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--c-border)}.back a{font-family:var(--font-mono);font-size:.8rem;color:var(--c-text-muted);text-decoration:none}.back a:hover{color:var(--c-accent)}
