:root{color-scheme:light;--background:#fff;--surface:#f6f8fa;--surface-strong:#eef3f8;--text:#24292f;--heading:#111827;--muted:#4b5563;--border:#c7d0da;--link:#0969da;--link-hover:#034ea2;--accent:#b93822;--code:#eef2f6;--callout:#fff8c5;--page-width:52rem;--prose-width:46rem;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}:root[data-theme=dark]{color-scheme:dark;--background:#0d1117;--surface:#161b22;--surface-strong:#1f2937;--text:#e6edf3;--heading:#f0f6fc;--muted:#b1bac4;--border:#3d4857;--link:#79c0ff;--link-hover:#a5d6ff;--accent:#ff8e72;--code:#202938;--callout:#2d2600}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);min-width:20rem;color:var(--text);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.7}::selection{background:color-mix(in srgb, var(--link) 22%, transparent)}a{color:var(--link);text-underline-offset:.16em;text-decoration-thickness:.08em}a:hover{color:var(--link-hover);text-decoration-thickness:.12em}:focus-visible{outline:3px solid var(--link);outline-offset:3px}img,svg{max-width:100%;display:block}button,input{font:inherit}.skip-link{z-index:20;background:var(--heading);color:var(--background);border-radius:.3rem;padding:.55rem .8rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--background) 94%, var(--surface))}.header-inner,.page-shell,.footer-inner{width:min(calc(100% - 2.5rem), var(--page-width));margin-inline:auto}.post-shell{width:min(calc(100% - 2.5rem), var(--prose-width));margin-inline:auto}.header-inner{align-items:center;gap:1.25rem;min-height:4.25rem;display:flex}.brand{color:var(--heading);letter-spacing:-.01em;margin-right:auto;font-size:1rem;font-weight:750;text-decoration:none}.site-nav,.header-actions,.footer-links{align-items:center;gap:1.1rem;display:flex}.site-nav a{min-height:2.75rem;color:var(--muted);align-items:center;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--heading)}.icon-link,.theme-toggle{width:2.75rem;height:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.35rem;place-items:center;display:grid}.icon-link:hover,.theme-toggle:hover{background:var(--surface-strong);color:var(--heading)}.icon-link svg,.theme-toggle svg{width:1.05rem;height:1.05rem}.page-shell,.post-shell{min-height:calc(100vh - 10rem);padding-block:clamp(2.75rem,6vw,5rem) 6rem}.home-intro{max-width:44rem;color:var(--heading);margin-bottom:3.5rem;font-size:clamp(1.15rem,2.5vw,1.35rem);line-height:1.6}.home-intro p{margin:0}.section-header{border-bottom:2px solid var(--heading);justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.8rem;display:flex}.section-header h1,.section-header h2,.page-heading h1,.post-header h1{color:var(--heading);letter-spacing:-.035em;margin:0;font-weight:750;line-height:1.15}.section-header h1,.section-header h2{font-size:1.55rem}.page-heading{margin-bottom:2.75rem}.page-heading h1{font-size:clamp(2rem,5vw,2.75rem)}.page-heading p{color:var(--muted);margin:.8rem 0 0}.post-list{display:grid}.post-card{border-bottom:1px solid var(--border);grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;padding-block:1.65rem;display:grid}.post-card-meta,.post-byline{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.post-card h2,.post-card h3{color:var(--heading);margin:-.12rem 0 .45rem;font-size:1.16rem;line-height:1.4}.post-card h2 a,.post-card h3 a{color:inherit;text-decoration-color:color-mix(in srgb, var(--link) 50%, transparent)}.post-card p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}.draft-badge{color:var(--accent);margin-left:.5rem;font-size:.72rem;font-weight:650}.draft-badge:before{content:"["}.draft-badge:after{content:"]"}.tag-list{flex-wrap:wrap;gap:.45rem;margin:.8rem 0 0;padding:0;list-style:none;display:flex}.tag{border:1px solid color-mix(in srgb, var(--link) 35%, var(--border));background:color-mix(in srgb, var(--link) 7%, var(--background));min-height:1.8rem;color:var(--link);border-radius:999px;align-items:center;padding:.15rem .5rem;font-size:.73rem;font-weight:650;text-decoration:none;display:inline-flex}.tag:before{content:"#"}.tag:hover{border-color:var(--link);background:color-mix(in srgb, var(--link) 13%, var(--background))}.post-header{margin-bottom:3.25rem}.post-header h1{max-width:45rem;font-size:clamp(2.25rem,6vw,3.35rem)}.post-deck{max-width:43rem;color:var(--muted);margin:1.1rem 0 1.2rem;font-size:clamp(1.08rem,2vw,1.22rem);line-height:1.55}.post-byline{flex-wrap:wrap;gap:.45rem 1rem;display:flex}.prose{color:var(--text);font-size:1.0625rem;line-height:1.72}.prose>*+*{margin-top:1.4em}.prose h2,.prose h3{color:var(--heading);letter-spacing:-.025em;scroll-margin-top:2rem;font-weight:750;line-height:1.25}.prose h2{margin-top:2.75em;margin-bottom:-.4em;padding-top:.2rem;font-size:clamp(1.65rem,4vw,2rem)}.prose h3{margin-top:2.2em;margin-bottom:-.45em;font-size:clamp(1.22rem,3vw,1.42rem)}.prose strong{color:var(--heading);font-weight:750}.prose a{font-weight:520}.prose ul,.prose ol{padding-left:1.45rem}.prose li+li{margin-top:.38rem}.prose blockquote{border-left:4px solid var(--accent);background:var(--callout);color:var(--text);border-radius:0 .35rem .35rem 0;margin-inline:0;padding:.85rem 1rem}.prose code{background:var(--code);color:var(--heading);font-family:var(--font-mono);border-radius:.25rem;padding:.12em .32em;font-size:.88em}.prose pre{color:#e6edf3;font-family:var(--font-mono);border:1px solid #30363d;border-radius:.45rem;padding:1.1rem 1.2rem;font-size:.88rem;line-height:1.6;overflow-x:auto;background:#0d1117!important}.prose pre code{color:inherit;background:0 0;padding:0}.prose table{border-spacing:0;border:1px solid var(--border);border-radius:.4rem;width:max-content;min-width:100%;max-width:100%;font-size:.88rem;line-height:1.45;display:block;overflow-x:auto}.prose thead{background:var(--surface-strong)}.prose th,.prose td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:left;vertical-align:top;min-width:7rem;padding:.7rem .75rem}.prose th{color:var(--heading);font-weight:700}.prose tr:nth-child(2n) td{background:color-mix(in srgb, var(--surface) 72%, var(--background))}.prose th:last-child,.prose td:last-child{border-right:0}.prose tbody tr:last-child td{border-bottom:0}.post-footer{border-top:1px solid var(--border);margin-top:4rem;padding-top:1.25rem}.text-link{font-size:.875rem;font-weight:600}.topic-grid,.work-grid{display:grid}.topic-card,.work-card{border-bottom:1px solid var(--border);color:var(--heading);padding-block:1.15rem;text-decoration:none}.topic-card:first-child,.work-card:first-child{border-top:1px solid var(--border)}.topic-card:hover h2,.topic-card:hover strong,.work-card:hover h2{color:var(--link);text-decoration:underline}.topic-card strong,.work-card h2{margin:0;font-size:1.05rem;display:block}.topic-card span,.work-card p{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}#search{--pagefind-ui-scale:.95;--pagefind-ui-primary:var(--link);--pagefind-ui-text:var(--text);--pagefind-ui-background:var(--surface);--pagefind-ui-border:var(--border);--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:.35rem;--pagefind-ui-tag:var(--code)}#search mark{background:color-mix(in srgb, var(--accent) 24%, var(--background));color:var(--heading)}.site-footer{border-top:1px solid var(--border);color:var(--muted);font-size:.8rem}.footer-inner{justify-content:flex-end;align-items:center;min-height:4.25rem;display:flex}.footer-links a{align-items:center;min-height:2.75rem;display:inline-flex}@media (width<=40rem){body,.prose{font-size:1rem}.header-inner{flex-wrap:wrap;padding-block:.45rem}.site-nav{border-top:1px solid var(--border);order:3;width:100%}.post-card{grid-template-columns:1fr;gap:.5rem}.post-header h1{font-size:1.85rem}.tag{min-height:2.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
