@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;1,8..60,400&display=swap";:root{--font-body: "Source Serif 4", Georgia, serif;--font-mono: "IBM Plex Mono", "SF Mono", Consolas, monospace;--color-bg: #faf9f7;--color-text: #1a1a1a;--color-text-muted: #666;--color-accent: #c45d2c;--color-border: #e5e3df;--color-code-bg: #f0eeea;--max-width: 680px;--spacing: 1.5rem}*{margin:0;padding:0;box-sizing:border-box}html{font-size:18px;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:1.65;-webkit-font-smoothing:antialiased}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing)}.container-wide{max-width:1000px}header{padding:2rem 0;border-bottom:1px solid var(--color-border)}header nav{display:flex;align-items:baseline;gap:2rem;flex-wrap:wrap}.logo{font-family:var(--font-mono);font-size:1.1rem;font-weight:600;color:var(--color-text);text-decoration:none;letter-spacing:-.02em;display:flex;align-items:baseline;gap:.5rem}.logo-img{height:1em;width:auto;display:block;vertical-align:baseline}.nav-links{display:flex;gap:1.5rem}.nav-links a{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-muted);text-decoration:none;transition:color .15s}.nav-links a:hover,.nav-links a.active{color:var(--color-accent)}main{padding:3rem 0 4rem}h1{font-size:2.2rem;font-weight:600;line-height:1.2;margin-bottom:1rem;letter-spacing:-.02em}h2{font-size:1.4rem;font-weight:600;margin-top:2.5rem;margin-bottom:.75rem;letter-spacing:-.01em}h3{font-size:1.1rem;font-weight:600;margin-top:2rem;margin-bottom:.5rem}p{margin-bottom:1.25rem}a{color:var(--color-accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{text-decoration-thickness:2px}code{font-family:var(--font-mono);font-size:.85em;background:var(--color-code-bg);padding:.15em .4em;border-radius:3px}pre{font-family:var(--font-mono);font-size:.85rem;background:var(--color-code-bg);padding:1.25rem;border-radius:4px;overflow-x:auto;margin:1.5rem 0;line-height:1.5}pre code{background:none;padding:0}ul,ol{margin-bottom:1.25rem;padding-left:1.5rem}li{margin-bottom:.4rem}.lead{font-size:1.15rem;color:var(--color-text-muted);margin-bottom:2rem}.page-header .lead{margin-bottom:1rem}.content>h2:first-child{margin-top:.5rem}.example{background:var(--color-code-bg);border-left:3px solid var(--color-accent);padding:1.25rem;margin:1.5rem 0;border-radius:0 4px 4px 0}footer{padding:2rem 0;border-top:1px solid var(--color-border);font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-muted)}footer a{color:var(--color-text-muted)}footer a:hover{color:var(--color-accent)}.page-with-toc{display:grid;grid-template-columns:200px 1fr;gap:3rem;align-items:start}.page-header{grid-column:2;display:block}.toc{position:sticky;top:2rem;font-family:var(--font-mono);font-size:.8rem}.toc nav h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:1rem;margin-top:0}.toc ul{list-style:none;padding:0;margin:0}.toc li{margin-bottom:.5rem}.toc li.toc-h3{padding-left:1rem}.toc a{color:var(--color-text-muted);text-decoration:none;display:block;line-height:1.4;transition:color .15s}.toc a:hover{color:var(--color-accent)}.content{min-width:0;padding-top:2.05rem}@media(max-width:900px){.page-with-toc{grid-template-columns:1fr;gap:2rem;display:flex;flex-direction:column}.page-header{display:block;order:1}.toc{display:none}.content{padding-top:0;order:3}}@media(max-width:600px){html{font-size:16px}header nav{gap:1rem}.nav-links{gap:1rem}h1{font-size:1.8rem}}
