:root{--fg:#1a1a1a;--bg:#fbfbf9;--muted:#666;--accent:#1a5fb4;--rule:#e2e2dd;--maxw:42rem}@media(prefers-color-scheme:dark){:root{--fg:#e6e6e3;--bg:#16181c;--muted:#9aa0a6;--accent:#7eb1ff;--rule:#2c2f36}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,segoe ui,Roboto,Helvetica,Arial,sans-serif;font-size:1.05rem;line-height:1.65;color:var(--fg);background:var(--bg)}main{max-width:var(--maxw);margin:0 auto;padding:1rem 1.25rem 4rem}.site-header{max-width:var(--maxw);margin:0 auto;padding:1.5rem 1.25rem 1rem;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;border-bottom:1px solid var(--rule)}.site-title{font-weight:700;font-size:1.2rem;text-decoration:none;color:var(--fg)}.site-header nav{display:flex;flex-wrap:wrap;gap:.9rem}.site-header nav a{text-decoration:none;color:var(--muted);font-size:.95rem}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--accent)}a{color:var(--accent)}a:hover{text-decoration:underline}h1{font-size:1.8rem;line-height:1.25;margin:1.5rem 0 .5rem}h2{font-size:1.35rem;margin:2rem 0 .5rem}h3{font-size:1.1rem;margin:1.5rem 0 .4rem}.post-meta{color:var(--muted);font-size:.9rem;margin-top:0}.post-list{list-style:none;padding:0;margin:1rem 0}.post-list li{display:flex;align-items:baseline;gap:.75rem;padding:.35rem 0}.post-list time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem;flex:none;min-width:5.5rem}.section-tag{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.post-body,.page-body,.intro{word-wrap:break-word}.post-body img,.page-body img{max-width:100%;height:auto}blockquote{margin:1.2rem 0;padding-left:1rem;border-left:3px solid var(--rule);color:var(--muted)}pre{overflow-x:auto;padding:.9rem 1rem;border-radius:6px;background:rgba(127,127,127,.12);font-size:.9rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}:not(pre)>code{background:rgba(127,127,127,.14);padding:.1em .35em;border-radius:4px}hr{border:none;border-top:1px solid var(--rule);margin:2rem 0}table{border-collapse:collapse;width:100%}th,td{border:1px solid var(--rule);padding:.4rem .6rem;text-align:left}.site-footer{max-width:var(--maxw);margin:0 auto;padding:1.5rem 1.25rem;border-top:1px solid var(--rule);color:var(--muted);font-size:.85rem}