@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");*{margin:0;padding:0;box-sizing:border-box}:root{--bg:#f5f5f5;--surface:#fff;--border:#d0d0d0;--border-dark:#999;--text:#111;--muted:#777;--label:#444}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;font-size:13px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.sidebar{width:200px;background:var(--surface);border-right:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column}.logo{padding:20px 16px;border-bottom:1px solid var(--border)}.logo-mark{font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.logo-sub{font-size:10px;color:var(--muted);margin-top:3px;letter-spacing:.5px}.nav-section{padding:16px 0 8px}.nav-label{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;padding:0 16px;margin-bottom:4px}.nav-item{display:block;padding:7px 16px;color:var(--muted);font-size:12px;border-left:2px solid transparent}.nav-item:hover{color:var(--text);background:var(--bg)}.nav-item.active{color:var(--text);border-left-color:var(--text);font-weight:500}.nav-item:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.sidebar-footer{margin-top:auto;padding:16px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);line-height:1.6}.sidebar-footer a{color:var(--text)}.sidebar-footer a:hover{text-decoration:underline}.main{flex:1 1;overflow:auto}.topbar{padding:14px 24px;border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:10}.page-title{font-size:14px;font-weight:600}.page-sub{font-size:11px;color:var(--muted);margin-top:2px}.content{padding:24px;max-width:820px}.prose h2{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--label);margin:28px 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border)}.prose h2:first-child{margin-top:0}.prose h3{font-size:13px;font-weight:600;color:var(--text);margin:18px 0 4px}.prose p{font-size:13px;line-height:1.7;color:var(--label);margin:0 0 12px;max-width:70ch}.prose strong{color:var(--text);font-weight:600}.prose ol,.prose ul{margin:0 0 12px;padding-left:20px}.prose li{font-size:13px;line-height:1.7;color:var(--label);max-width:68ch;margin-bottom:4px}.prose a{color:var(--text);text-decoration:underline;text-underline-offset:2px}.prose a:hover{color:var(--muted)}.prose a:focus-visible{outline:2px solid var(--text);outline-offset:2px}.prose code{font-family:JetBrains Mono,monospace;font-size:11px;background:var(--bg);padding:1px 4px}.prose code,.prose pre{border:1px solid var(--border)}.prose pre{background:var(--surface);padding:16px 18px;margin:0 0 14px;overflow-x:auto}.prose pre code{background:none;border:0;padding:0;font-size:11px;line-height:1.85;color:var(--text)}.prose table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);margin:0 0 14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.prose th{text-align:left;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;padding:8px 12px;font-weight:500;background:var(--bg)}.prose td,.prose th{border-bottom:1px solid var(--border)}.prose td{padding:11px 12px;vertical-align:top;font-size:12px;line-height:1.6;color:var(--label)}.prose tbody tr:last-child td{border-bottom:0}.prose blockquote{border-left:2px solid var(--border-dark);padding:2px 0 2px 14px;margin:0 0 12px}.prose blockquote p{margin:0;font-size:12px;color:var(--muted)}@media (max-width:760px){.shell{flex-direction:column}.sidebar{width:auto;border-right:0;border-bottom:1px solid var(--border)}.nav-section{display:flex;flex-wrap:wrap;padding:8px}.nav-label{display:none}.nav-item{border-left:0;border-bottom:2px solid transparent}.nav-item.active{border-left:0;border-bottom-color:var(--text)}.sidebar-footer{display:none}.content{padding:16px}.topbar{position:static;padding:12px 16px}}