:root{--text: #1a1a1a;--text-muted: #666666;--bg: #fafafa;--border: #e0e0e0;--font-serif: "Source Serif 4", Georgia, "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--width: 42.5rem}@media(prefers-color-scheme:dark){:root{--text: #e8e8e8;--text-muted: #999999;--bg: #111111;--border: #333333}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{font-family:var(--font-serif);font-size:1.0625rem;background:var(--bg);color:var(--text);line-height:1.7;min-height:100vh;-webkit-font-smoothing:antialiased}::selection{background:var(--text);color:var(--bg)}a{color:var(--text);text-decoration:underline;text-underline-offset:3px;transition:color .15s ease}a:hover{color:var(--text-muted)}.skip{position:absolute;left:-9999px;top:0;background:var(--text);color:var(--bg);padding:8px 12px;z-index:1000;font-family:var(--font-sans);font-size:.875rem}.skip:focus{left:1rem;top:1rem}.masthead{margin-bottom:3rem;padding-top:2rem}.masthead-inner{max-width:var(--width);margin:0 auto;padding:0 2rem}h1.title{font-size:2.75rem;font-weight:600;letter-spacing:-.02em;line-height:1.1;margin:0;color:var(--text)}.doc-main{max-width:var(--width);margin:0 auto;padding:0 2rem 4rem}.doc article>h1{display:none}.doc article p{margin-bottom:1.5rem;font-size:1.25rem}.doc article>p:first-of-type{font-size:1.25rem;font-weight:400}.doc article>ul:first-of-type{list-style:none;padding:0;margin:0 0 1.5rem}.doc article>ul:first-of-type li{margin-bottom:1.25rem;padding-left:1.25rem;border-left:2px solid var(--border);font-size:1.25rem;color:var(--text);line-height:1.7}.doc article>ul:first-of-type li::marker{content:none}.doc article>ul:first-of-type li strong{font-weight:600}.doc article>ul:first-of-type li em{font-style:normal;color:var(--text-muted)}.doc article>p:nth-of-type(2){font-style:italic;color:var(--text-muted);margin-bottom:1.5rem}.doc article hr{border:none;border-top:1px solid var(--border);margin:3rem 0}.doc article h2{font-family:var(--font-sans);font-size:1.2rem;font-weight:600;margin:0 0 1rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.doc article h2:not(:first-child){margin-top:0;padding-top:0;border-top:none}.doc article h2+h3{margin-top:2rem}.doc article h3~h3{margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--border)}.doc article h3{font-family:var(--font-sans);font-size:1.5rem;font-weight:600;line-height:1.35;letter-spacing:-.02em;margin:0 0 1.25rem;color:var(--text)}.doc article h3+p{color:var(--text)}.doc article strong{font-weight:600}.doc article em{font-style:italic}.doc article ul:not(:first-of-type),.doc article ol{padding-left:1.5rem;margin:0 0 1.5rem;font-size:1.25rem}.doc article li{margin-bottom:.5rem}.doc article blockquote{border-left:2px solid var(--border);padding-left:1.5rem;margin:2rem 0;font-style:italic;color:var(--text-muted);font-size:1.25rem}.doc article code,.doc article pre{font-family:var(--font-mono);font-size:.9em}.doc article code{background:color-mix(in srgb,var(--border) 40%,transparent);padding:.1em .35em;border-radius:3px}.doc article pre{border:1px solid var(--border);padding:1rem 1.25rem;overflow-x:auto;margin:0 0 1.5rem;font-size:.9rem;line-height:1.6}.doc article pre code{background:none;padding:0}.doc article table{width:100%;border-collapse:collapse;font-size:1.0625rem;margin:0 0 1.5rem}.doc article th,.doc article td{text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--border);vertical-align:top}.doc article th{font-family:var(--font-sans);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}footer{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border)}.footer-inner{max-width:var(--width);margin:0 auto;padding:0 2rem 3rem;font-family:var(--font-sans);font-size:.9375rem;color:var(--text-muted);display:flex;flex-direction:column;gap:.75rem}.footer-inner a{color:var(--text-muted)}.footer-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}@media(max-width:560px){.masthead-inner,.doc-main,.footer-inner{padding-left:1.25rem;padding-right:1.25rem}h1.title{font-size:2.25rem}.doc article h3{font-size:1.35rem}.doc article p,.doc article>ul:first-of-type li,.doc article ul:not(:first-of-type),.doc article ol{font-size:1.125rem}}@media print{.skip{display:none}body{background:#fff;color:#000}}
