*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{line-height:1.6;min-height:100svh;-webkit-font-smoothing:antialiased}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}ol,ul{list-style:none}:root{--color-bg:#1e1e1e;--color-surface:#474747;--color-text:#f4f4f4;--color-text-muted:#6b6b6b;--color-accent:#161616;--color-border:#454545;--color-placeholder:#d9d9d9;--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:4rem;--space-2xl:8rem;--font-sans:"Geist",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,"SFMono-Regular","SF Mono",Menlo,monospace;--text-sm:.875rem;--text-base:.875rem;--text-lg:clamp(1.125rem,1rem + .5vw,1.375rem);--text-xl:clamp(1.5rem,1.25rem + 1vw,2rem);--text-2xl:clamp(2rem,1.5rem + 2vw,3rem);--text-3xl:clamp(2.5rem,1.75rem + 3vw,4.5rem);--page-padding:16px;--waterfall-column-count:3;--waterfall-column-gap:4px;--transition-fast:.15s ease;--transition-base:.25s ease}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.02em;line-height:1.15}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}p+p{margin-top:var(--space-md)}.prose{color:var(--color-text);font-size:var(--text-base);font-weight:400;line-height:1.7}.prose p{margin-bottom:1.25em}.prose h2{font-size:var(--text-lg);font-weight:500;letter-spacing:-.01em;line-height:1.3;margin-bottom:.75em;margin-top:2em}.prose h3{font-size:var(--text-base);font-weight:500;line-height:1.4;margin-bottom:.5em;margin-top:1.75em}.prose ol,.prose ul{list-style:disc;margin-bottom:1.25em;padding-left:1.5em}.prose ol{list-style:decimal}.prose li{margin-bottom:.4em}.prose strong{font-weight:500}.prose em{font-style:italic}.prose blockquote{border-left:3px solid var(--color-border);color:var(--color-text-muted);margin:1.25em 0;padding-left:1em}.prose code{background-color:var(--color-surface);border-radius:4px;font-family:var(--font-mono);font-size:.9em;padding:.15em .4em}.prose hr{border:none;border-top:1px solid var(--color-border);margin:2em 0}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}
