@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./familjen-grotesk-vietnamese-400-normal.zA_bdTHL.woff2)format("woff2"),url(./familjen-grotesk-vietnamese-400-normal.BBg_xB3v.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./familjen-grotesk-latin-ext-400-normal.CKjrzSH-.woff2)format("woff2"),url(./familjen-grotesk-latin-ext-400-normal.uP2AiLOF.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(./familjen-grotesk-latin-400-normal.DOvmqNol.woff2)format("woff2"),url(./familjen-grotesk-latin-400-normal.DYohiwGD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./familjen-grotesk-vietnamese-500-normal.D4oly79D.woff2)format("woff2"),url(./familjen-grotesk-vietnamese-500-normal.Cv-94wkS.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./familjen-grotesk-latin-ext-500-normal.C6C0U28C.woff2)format("woff2"),url(./familjen-grotesk-latin-ext-500-normal.B6Onzdxd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(./familjen-grotesk-latin-500-normal.BASv1Bog.woff2)format("woff2"),url(./familjen-grotesk-latin-500-normal.BJWE1t8Q.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./familjen-grotesk-vietnamese-600-normal.Cf5LI1HU.woff2)format("woff2"),url(./familjen-grotesk-vietnamese-600-normal.DD7qc10H.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./familjen-grotesk-latin-ext-600-normal.K2kKrvU3.woff2)format("woff2"),url(./familjen-grotesk-latin-ext-600-normal.Bm1Bk2lg.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(./familjen-grotesk-latin-600-normal.DR8FYmV8.woff2)format("woff2"),url(./familjen-grotesk-latin-600-normal.Cchso0CV.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./familjen-grotesk-vietnamese-700-normal.BQbgNr8Y.woff2)format("woff2"),url(./familjen-grotesk-vietnamese-700-normal.DnK_bp0P.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./familjen-grotesk-latin-ext-700-normal.uph16z26.woff2)format("woff2"),url(./familjen-grotesk-latin-ext-700-normal.ChieoNWR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(./familjen-grotesk-latin-700-normal.DP3KK2u2.woff2)format("woff2"),url(./familjen-grotesk-latin-700-normal.Cqh4U_Q6.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fragment Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAWUAA4AAAAABvAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABRAAAABYAAAAWABEABEdQT1MAAAFcAAAAHgAAAB5EdEx1R1NVQgAAAXwAAAAnAAAAKLj8uOpPUy8yAAABpAAAAFUAAABgYo+sRGNtYXAAAAH8AAAAQgAAAFxB0OJbZ2FzcAAAAkAAAAAIAAAACAAAABBnbHlmAAACSAAAAT0AAAFaNhXKIGhlYWQAAAOIAAAANgAAADYqgLJdaGhlYQAAA8AAAAAfAAAAJBAY8MdobXR4AAAD4AAAABkAAAAiEYUB02xvY2EAAAP8AAAAFAAAABQBUAHKbWF4cAAABBAAAAAcAAAAIAAjAQBuYW1lAAAELAAAARoAAAJuNApRAXBvc3QAAAVIAAAASwAAAF2B645zAAEAAAAMAAAAAAAAAAIAAQABAAMAAQAAAAEAAAAKABwAHAABREZMVAAIAAQAAAAA//8AAAAAAAB42mNgZGBg4GJQA0ImFzefEAahnMSSPAY+BhBgARH//4NIAFpJBVUAeNotxbENQEAYhuH3/87hwhA3g1KvEANQGcAoKolJJKLR2AwJT/OQaLIFD5o1AN23jVRWgwofnF4JkAHi1zctXMS4u+NOwW0WIrYCqNQJRPIH7S0K2QAAAHjaY2BgYAJiZiAWAZKMYJqFwQNI8zFwAOXYGBQYHBkWMBxkZFLY8v8/UByF///J/wP/U/87/me8HwTUjQIAZb8SQgAAAAEAAf//AA942mJgAvQ4zXARx1H8vd8x2zx8riX/lW3btt2SzS3M7VN7t4Qte7q2ptx++sVnvy9UABBHogURyAAUCgcFUiWOxjTcMzbhnHGKaA2NZJ5O+tLJHDopA0s6GaCSqZwYJ2RE+Bz3GdfwMKozLh81XV3R+VT0wwyT6WdDtEk0gAB0T2Yywu5/ff2/Lqe1XfrB2/RG8sgJuEAQgJOC51iNSimVqXieCXd1cZYxLoovlro4uzLhvMDYEpVSw7G8oPLGVceU6KR8cYF4vK12yLbUcE7CjS2WxRlpRViAsR3J/RNiaRoeeAcJybFcWXN7pUadlJHkqYpJT4yMLA/rrXbwswNAlJACvCePIKKJwMhQ0jC4TQq2tmgKO6QUT4gOrCg6hkIQGKmUItiJlhcXy6PFhYkJhUSXlJSWmAhmxutO9wAAAAABAAAAAQLRsUtkZV8PPPUADwPoAAAAAN9+te8AAAAA3362EvlE/vcTHAOxAAAABgACAAAAAAAAeNpjYGRgYN72n42BgSnrp8t7P2EZoAgq4AAAe9wE3gB42mPKYogAYjkkzADFMgwMjKwM8wFSaARoAAAAAAAAFQAuADoARgBGAEYAiACWAK142mNgZGBg4GTIZ2Bn6GfgAvMQgIOBEQAZTQEkeNqNkQVOREEQRB/uxIPEfgR3d3d3iKHr7rvhWpyCQ3AYKpN1T6emvbvSA7TjpImG5g7gt2E3bTcw2DCcthvpbehP201s8pe2mxnnJ2238Mhb2m5llOW03SsL3MQlYWKsMyOJYSOKR5G47GnBg186RBSX8jcccylE+ZQfwEFQlVfKB4Up7hVxkVDPJ1Ge5UXNDOWxmGOaWeYkG1hms5NPEtIh3HjMLItRkqZyVVgUVphiCbvwxVjJbiu73Sranr/thSPOpOtkXuRV3nkghPk2N3PhNrl5ZoV5WY+41WGV9E/lcb4lKu1Vxma698w93ObiMXON4j9y4TEVCb6YVleIgKIpTfCkX+X4JIgrz5rBWcIikGYx9g9ueGIvAAB42mNgYgCD/3MYjIAUIwM64ARiFYaTjEwMzIzMjCyMrIxsbI5JRallqeyleZkGBo4GINrIwMmEMzG5tCQ1OT83CSxjbGAGANg9D2UA)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fragment Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./fragment-mono-latin-ext-400-normal.BbKYyvR9.woff2)format("woff2"),url(./fragment-mono-latin-ext-400-normal.CT4YFKeK.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fragment Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./fragment-mono-latin-400-normal.yxdJ5AmL.woff2)format("woff2"),url(./fragment-mono-latin-400-normal.BYwT3kSJ.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans:"Familjen Grotesk", system-ui, sans-serif;--font-mono:"Fragment Mono", ui-monospace, monospace}:root,:root[data-theme=light]{--bg:#f5f6f8;--surface:#fff;--surface-2:#eef0f4;--surface-hover:#e9ecf2;--text:#101014;--muted:#62626d;--border:#d9dde5;--border-soft:#e8ebf0;--declare:#4d5ef0;--declare-soft:#eceefe;--declare-ink:#fff;--observe:#c5f23b;--observe-soft:#f3fce0;--evidence:#c5f23b;--evidence-ink:#0b0c12;--ok:#3dbe5a;--warn:#f0a13c;--danger:#e2484d;--danger-soft:#fbe9ea;--code-bg:#12141c;--code-text:#e6e4da;--code-muted:#8f92a5;--code-keyword:#7a8cff;--code-string:#c5f23b;--code-number:#f0a13c;--weight-strong:700;--r:2px}:root[data-theme=dark]{--bg:#0b0c12;--surface:#12141c;--surface-2:#1a1d28;--surface-hover:#1f2230;--text:#e6e4da;--muted:#8f92a5;--border:#252838;--border-soft:#1c1f2c;--declare:#7a8cff;--declare-soft:#1a2040;--declare-ink:#0b0c12;--observe:#c5f23b;--observe-soft:#394523;--evidence:#c5f23b;--evidence-ink:#0b0c12;--ok:#3dbe5a;--warn:#f0a13c;--danger:#e2484d;--danger-soft:#2b1a22;--code-bg:#12141c;--code-text:#e6e4da;--code-muted:#8f92a5;--code-keyword:#7a8cff;--code-string:#c5f23b;--code-number:#f0a13c;--weight-strong:600;--r:2px}:root{--head-h:60px;--ease:.16s ease-out;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--bg);min-width:320px;scroll-padding-top:calc(var(--head-h) + 16px)}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;caret-color:var(--declare);margin:0;font-size:15px;line-height:1.6}::selection{background:var(--declare-soft);color:var(--text)}*{scrollbar-color:var(--border) transparent}a{color:var(--declare);text-underline-offset:3px;text-decoration-thickness:1px}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--declare);outline-offset:2px}svg{flex:none}.skip{z-index:100;background:var(--declare);color:var(--declare-ink);font-weight:var(--weight-strong);border-radius:var(--r);padding:10px 14px;position:absolute;top:-60px;left:12px}.skip:focus{top:10px}.icon-control{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);min-width:36px;height:36px;color:var(--text);transition:background-color var(--ease), border-color var(--ease);justify-content:center;align-items:center;gap:7px;padding:0 9px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.icon-control:hover{border-color:var(--text);background:var(--surface-hover)}.icon-control svg{width:17px;height:17px}.button{border:1px solid var(--text);border-radius:var(--r);min-height:40px;color:var(--text);font-weight:var(--weight-strong);transition:background-color var(--ease);background:0 0;align-items:center;gap:8px;padding:0 16px;text-decoration:none;display:inline-flex}.button:hover{background:var(--surface-2)}.button.primary{border-color:var(--declare);background:var(--declare);color:var(--declare-ink)}.button.primary:hover{filter:brightness(.94)}.site-head{z-index:40;height:var(--head-h);border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:16px;padding:0 20px;display:flex;position:sticky;top:0}.lockup{color:var(--text);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.lockup .word{font-size:22px;font-weight:var(--weight-strong);letter-spacing:-.03em}.lockup .tag{border:1px solid var(--border);border-radius:var(--r);color:var(--muted);font:11px/1 var(--font-mono);letter-spacing:.04em;padding:4px 6px 3px}.lockup+:not(.search-open){margin-left:auto}.site-head .search-open{border:1px solid var(--border);border-radius:var(--r);background:var(--bg);width:min(420px,38vw);height:36px;color:var(--muted);text-align:left;align-items:center;gap:10px;margin-left:auto;padding:0 8px 0 12px;font-size:14px;display:flex}.site-head .search-open:hover{border-color:var(--text)}.site-head .search-open svg{width:16px;height:16px}.site-head .search-open span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.site-head .search-open kbd{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);font:11px/1 var(--font-mono);padding:3px 6px}.head-link{color:var(--text);white-space:nowrap;font-size:14px;font-weight:600;text-decoration:none}.head-link:hover{color:var(--declare)}.theme-toggle .moon,:root[data-theme=dark] .theme-toggle .sun{display:none}:root[data-theme=dark] .theme-toggle .moon{display:block}.nav-drawer{display:none}.shell{min-height:calc(100vh - var(--head-h));grid-template-columns:248px minmax(0,1fr) 216px;display:grid}.side{top:var(--head-h);height:calc(100vh - var(--head-h));border-right:1px solid var(--border);background:var(--surface);padding:22px 14px 32px 18px;position:sticky;overflow-y:auto}.side section+section{margin-top:20px}.side h2{color:var(--muted);font:11px/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;padding:0 8px}.side h3{color:var(--muted);margin:10px 0 2px;padding:0 8px;font-size:12px;font-weight:600}.side ul{margin:0;padding:0;list-style:none}.side a{border-radius:var(--r);color:var(--muted);transition:background-color var(--ease), color var(--ease);border:1px solid #0000;padding:5px 8px;font-size:14px;font-weight:500;line-height:1.35;text-decoration:none;display:block}.side a:hover{background:var(--surface-hover);color:var(--text)}.side a[aria-current=page]{border-color:var(--declare);background:var(--declare-soft);color:var(--text);font-weight:var(--weight-strong)}.main{width:min(760px,100% - 56px);min-width:0;margin:0 auto;padding:36px 0 64px}.crumbs{color:var(--muted);font:12px/1.4 var(--font-mono);margin:0 0 14px}.toc{top:var(--head-h);max-height:calc(100vh - var(--head-h));padding:36px 18px 32px;position:sticky;overflow-y:auto}.toc h2{color:var(--muted);font:11px/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;margin:0 0 10px}.toc a{border-left:1px solid var(--border-soft);color:var(--muted);padding:5px 0 5px 10px;font-size:13px;line-height:1.4;text-decoration:none;display:block}.toc a.sub{padding-left:22px}.toc a:hover{color:var(--text)}.toc a[aria-current=true]{border-left-color:var(--declare);color:var(--declare);font-weight:var(--weight-strong)}.prose>:first-child{margin-top:0}.prose h1{letter-spacing:-.035em;margin:0 0 16px;font-size:44px;line-height:1.05}.prose h1+p{color:var(--muted);font-size:17px;line-height:1.5}.prose h2{border-top:1px solid var(--border-soft);letter-spacing:-.02em;margin:44px 0 10px;padding-top:18px;font-size:24px;line-height:1.2}.prose h3{margin:28px 0 8px;font-size:18px;line-height:1.3}.prose h4{margin:22px 0 6px;font-size:15px}.prose :is(h1,h2,h3,h4) a{color:inherit;text-decoration:none}.prose :is(h1,h2,h3,h4) a:hover{text-decoration:underline}.prose p{margin:12px 0}.prose ul,.prose ol{margin:12px 0;padding-left:22px}.prose li{margin:5px 0}.prose li::marker{color:var(--muted)}.prose strong{font-weight:var(--weight-strong)}.prose .term{box-shadow:inset 0 -2px 0 var(--observe)}.prose ol>li::marker{color:var(--warn);font-family:var(--font-mono)}.prose hr{border:0;border-top:1px solid var(--border);margin:32px 0}.prose blockquote{border-left:2px solid var(--border);color:var(--muted);margin:16px 0;padding:2px 0 2px 16px}.prose :not(pre)>code{border:1px solid var(--border-soft);border-radius:var(--r);background:var(--surface-2);font:.88em var(--font-mono);overflow-wrap:anywhere;padding:1px 5px}.prose img{max-width:100%;height:auto}.code{border:1px solid var(--border);border-radius:var(--r);background:var(--code-bg);color:var(--code-text);--shiki-foreground:var(--code-text);--shiki-background:var(--code-bg);--shiki-token-comment:var(--code-muted);--shiki-token-punctuation:var(--code-muted);--shiki-token-keyword:var(--code-keyword);--shiki-token-string:var(--code-string);--shiki-token-string-expression:var(--code-string);--shiki-token-constant:var(--code-number);--shiki-token-function:var(--code-number);--shiki-token-parameter:var(--code-text);--shiki-token-link:var(--code-string);margin:16px 0}.code-head{border-bottom:1px solid color-mix(in srgb, var(--code-muted) 35%, var(--code-bg));min-height:36px;color:var(--code-muted);font:11px/1 var(--font-mono);align-items:center;gap:10px;padding:4px 6px 4px 12px;display:flex}.code-file{color:var(--code-text)}.code-lang{margin-right:auto}.code .copy{border:1px solid color-mix(in srgb, var(--code-muted) 55%, var(--code-bg));border-radius:var(--r);min-height:28px;color:var(--code-text);font:11px/1 var(--font-mono);transition:border-color var(--ease);background:0 0;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.code .copy:hover{border-color:var(--code-muted)}.code .copy[data-state=Copied]{border-color:var(--evidence);color:var(--evidence)}.code .copy svg{width:13px;height:13px}.code-scroll{overflow-x:auto}.code-scroll:focus-visible{outline-offset:-2px}.code pre{font:13px/1.6 var(--font-mono);tab-size:2;margin:0;padding:13px 14px 15px;background:0 0!important}.code pre code{font:inherit}.code pre .line.hl{box-sizing:border-box;border-left:2px solid var(--code-keyword);background:color-mix(in srgb, var(--code-keyword) 16%, var(--code-bg));min-width:calc(100% + 28px);margin:0 -14px;padding:0 14px 0 12px;display:inline-block}.aside{border:1px solid var(--border);border-left:2px solid var(--declare);border-radius:var(--r);background:var(--surface);margin:20px 0;padding:12px 16px}.aside[data-type=tip]{border-left-color:var(--observe);background:var(--observe-soft)}.aside[data-type=caution]{border-left-color:var(--warn)}.aside[data-type=danger]{border-color:var(--danger);background:var(--danger-soft)}.aside .at{font-size:14px;font-weight:var(--weight-strong);margin-bottom:4px}.aside[data-type=caution] .at:before{content:"! ";color:var(--warn)}.aside[data-type=danger] .at:before{content:"✕ ";color:var(--danger)}.aside>:last-child{margin-bottom:0}.aside p:first-of-type{margin-top:0}.page-status{border:1px solid var(--border);border-left:2px solid var(--ok);border-radius:var(--r);color:var(--muted);font:12px/1.6 var(--font-mono);margin:0 0 12px;padding:2px 8px;display:inline-block}.page-status[data-status=partial]{border-left-color:var(--warn)}.page-status[data-status=planned]{border-left-color:var(--muted)}.page-updated{color:var(--muted);font:12px/1.6 var(--font-mono);margin:32px 0 0}.table-scroll{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);margin:16px 0;overflow-x:auto}.main table{border-collapse:collapse;width:100%;font-size:14px}.main :not(.table-scroll)>table{border:1px solid var(--border);background:var(--surface);margin:16px 0}.main th{border-bottom:1px solid var(--border);background:var(--surface-2);color:var(--muted);font:11px/1.3 var(--font-mono);letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:8px 12px}.main td code{white-space:nowrap}.main td{border-bottom:1px solid var(--border-soft);vertical-align:top;padding:8px 12px}.main tbody tr:last-child td{border-bottom:0}table.ref .nm,table.ref .ty{font:13px var(--font-mono)}table.ref .nm{white-space:nowrap}table.ref .ty{color:var(--muted)}.st{font:12px var(--font-mono);white-space:nowrap}.st.ok{color:var(--ok)}.st.ok:before{content:"✓ "}.st.warn{color:var(--warn)}.st.warn:before{content:"! "}.st.danger{color:var(--danger)}.st.danger:before{content:"✕ "}.wyrd-defs{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);grid-template-columns:minmax(140px,200px) 1fr;gap:0;margin:16px 0;display:grid}.wyrd-defs dt,.wyrd-defs dd{border-bottom:1px solid var(--border-soft);margin:0;padding:9px 12px}.wyrd-defs dt{font-weight:var(--weight-strong)}.wyrd-defs dt:last-of-type,.wyrd-defs dd:last-of-type{border-bottom:0}.pag{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:12px;margin-top:48px;padding-top:20px;display:grid}.pag a{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:var(--text);transition:border-color var(--ease);padding:12px 14px;text-decoration:none;display:block}.pag a:hover{border-color:var(--declare)}.pag .next{text-align:right;grid-column:2}.pag .dir{color:var(--muted);font:11px/1.4 var(--font-mono)}.pag .lbl{font-weight:var(--weight-strong)}.dark-field{--bg:#0b0c12;--surface-2:#1a1d28;--text:#e6e4da;--muted:#8f92a5;--border:#252838;--declare:#7a8cff;--declare-ink:#0b0c12;background:var(--bg);color:var(--text)}.site-foot{border-top:1px solid var(--border);background:var(--surface);color:var(--muted);padding:22px 20px;font-size:13px}.foot-horizon{width:calc(100% + 40px);height:56px;margin:-22px -20px 14px;display:block}.foot-horizon .sun{fill:var(--warn)}.foot-horizon .band{fill:var(--surface)}.foot-horizon .horizon{stroke:var(--observe);stroke-width:1.5px}.foot-horizon .grid{stroke:var(--declare);stroke-opacity:.35}.site-foot nav{flex-wrap:wrap;gap:8px 20px;display:flex}.site-foot a{color:var(--muted)}.site-foot a:hover{color:var(--text)}.wd{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin:24px 0;font-size:15px;line-height:1.6}.wd-head{border-bottom:1px solid var(--border-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:12px 14px;display:flex}.wd-meta{color:var(--muted);min-width:0;font-size:13px}.wd-meta b{color:var(--text);font-weight:var(--weight-strong)}.wd-ctrl{flex-wrap:wrap;gap:6px;display:inline-flex}.wd button{font:12px var(--font-mono);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r);cursor:pointer;padding:6px 10px}.wd button:hover{background:var(--surface-hover)}.wd button:focus-visible{outline:2px solid var(--declare);outline-offset:2px}.wd button[aria-pressed=true]{background:var(--declare-soft);border-color:var(--declare)}.wd button.wd-play{background:var(--declare);color:var(--declare-ink);border-color:var(--declare)}.wd-canvas{padding:8px 6px;position:relative;overflow-x:auto}.wd-canvas svg{width:100%;min-width:700px;height:auto;display:block}.wd-narr{border-top:1px solid var(--border-soft);grid-template-columns:auto 1fr;align-items:start;gap:12px;min-height:64px;padding:12px 14px;display:grid}.wd-k{font:11px var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;padding-top:3px}.prose .wd p{margin:0;font-size:14px}.prose .wd :not(pre)>code{font:.86em var(--font-mono);background:0 0;border:0;padding:0}.wd-detail{border-top:1px solid var(--border-soft);gap:8px;padding:12px 14px;display:grid}.wd-row{grid-template-columns:140px 1fr;gap:10px;font-size:13.5px;display:grid}.wd-row>span:first-child{color:var(--muted);font:12px var(--font-mono);padding-top:2px}.wd pre.wd-sql{background:var(--code-bg);color:var(--code-text);font:12.5px/1.55 var(--font-mono);border-radius:var(--r);margin:0;padding:12px 14px;overflow-x:auto}.wd-sql .kw{color:var(--code-keyword)}.wd-note{color:var(--muted);font-size:13.5px}.wd-text{border-top:1px solid var(--border-soft);padding:10px 14px;font-size:13.5px}.wd-text summary{cursor:pointer;font:12px var(--font-mono);color:var(--muted)}.prose .wd-text ol{margin:8px 0 4px}.wd-tl{border-top:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.wd-tl label{font:12px var(--font-mono);color:var(--muted)}.wd-tl input[type=range]{accent-color:var(--declare);flex:260px}.wd-facts{border-top:1px solid var(--border-soft);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.wd-fact{border-right:1px solid var(--border-soft);gap:4px;padding:12px 14px;display:grid}.wd-fact:last-child{border-right:0}.wd-fact .v{font-size:15px;font-weight:var(--weight-strong)}.wd-fact .s{color:var(--muted);font-size:13px}.wd-badge{font:12.5px var(--font-mono);border:2px solid var(--border);border-radius:var(--r);align-items:center;gap:6px;width:fit-content;padding:1px 7px;display:inline-flex}.wd-badge.ok{border-color:var(--ok)}.wd-badge.warn{border-color:var(--warn)}.wd-badge.danger{border-color:var(--danger)}@media (width<=560px){.wd-row{grid-template-columns:1fr;gap:2px}.wd-fact{border-right:0;border-bottom:1px solid var(--border-soft)}}.wd svg text{font-family:var(--font-sans)}.wd-t-title{fill:var(--text);font-size:13.5px;font-weight:var(--weight-strong)}.wd-t-sub{fill:var(--muted);font:10.5px var(--font-mono)}.wd-t-code{fill:var(--text);font:12px var(--font-mono);font-weight:var(--weight-strong)}.wd svg .wd-t-ink{fill:var(--evidence-ink)}.wd-t-col,.wd-t-yes{fill:var(--text);font:11px var(--font-mono)}.wd-t-colk,.wd-t-no{fill:var(--muted);font:11px var(--font-mono)}.wd-t-group,.wd-t-lane{fill:var(--muted);font:10.5px var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.wd-t-target{fill:var(--text);font:12.5px var(--font-mono);font-weight:var(--weight-strong)}.wd-t-label{fill:var(--muted);font:10.5px var(--font-mono);paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}.wd-t-x{fill:var(--danger);font:12px var(--font-mono)}.wd-t-stage{fill:var(--text);font:11px var(--font-mono)}.wd-t-stagesub{fill:var(--muted);font:10.5px var(--font-sans)}.wd-f-surface{fill:var(--surface)}.wd-f-surface2{fill:var(--surface-2)}.wd-f-declare{fill:var(--declare-soft)}.wd-f-evidence{fill:var(--observe)}.wd-s-border{stroke:var(--border);stroke-width:1px}.wd-s-declare{stroke:var(--declare);stroke-width:1px}.wd-s-text{stroke:var(--text);stroke-width:1px}.wd-s-dash{stroke-dasharray:4 3}.wd-group{fill:none;stroke:var(--border);stroke-dasharray:2 4}.wd-tone-progress{stroke:var(--declare);stroke-width:2px}.wd-tone-ok{stroke:var(--ok);stroke-width:2px}.wd-tone-warn{stroke:var(--warn);stroke-width:2px}.wd-tone-danger{stroke:var(--danger);stroke-width:2px}.wd-tone-muted{stroke:var(--muted);stroke-width:2px}.wd-line{fill:none;stroke-width:1px}.wd-k-data .wd-line{stroke:var(--text)}.wd-k-control .wd-line{stroke:var(--declare)}.wd-k-ref .wd-line{stroke:var(--muted);stroke-dasharray:3 3}.wd-k-best .wd-line{stroke:var(--text);stroke-dasharray:5 4}.wd-mk-data{fill:var(--text)}.wd-mk-control{fill:var(--declare)}.wd-mk-ref{fill:var(--muted)}.wd-hit{fill:none;stroke:#0000;stroke-width:14px;cursor:pointer}.wd-n,.wd-e{transition:opacity .22s ease-out}.wd-focus .wd-n:not(.on),.wd-focus .wd-e:not(.on){opacity:.22}.wd-e.on .wd-line{stroke-width:2px}.wd-n.clickable{cursor:pointer}.wd-n:focus-visible{outline:none}.wd-n .wd-halo{fill:none}.wd-n.sel .wd-halo,.wd-n:focus-visible .wd-halo{stroke:var(--declare);stroke-width:2px}.wd-pk-data{fill:var(--observe);stroke:var(--evidence-ink);stroke-width:1px}.wd-pk-control{fill:var(--declare)}.wd-lifeline{stroke:var(--border);stroke-dasharray:2 4}.wd-lane{fill:var(--surface-2)}.wd-axis{stroke:var(--border)}.wd-tick{stroke:var(--muted)}.wd-cursor{stroke:var(--declare);stroke-width:1.5px}.wd-peer{fill:none;stroke:var(--declare);stroke-dasharray:2 3}.wd-pod>.wd-box{fill:var(--surface);stroke:var(--border)}.wd-pod.hl>.wd-box{stroke:var(--declare);stroke-width:2px}.wd-facet .wd-pod.dim,.wd-facet .wd-chip.dim{opacity:.3}.wd-chip rect{fill:var(--surface-2);stroke:var(--border)}.wd-chip.off rect{fill:none;stroke-dasharray:3 3}.wd-chip.hl rect{fill:var(--declare-soft);stroke:var(--declare);stroke-width:2px}.wd-pod,.wd-chip{transition:opacity .22s ease-out}@media (prefers-reduced-motion:reduce){.wd-n,.wd-e,.wd-pod,.wd-chip{transition:none}}.nf{min-height:520px;position:relative;overflow:hidden}.nf-body{max-width:560px;margin-left:max(20px,50% - 620px);padding:72px 0;position:relative}@media (width<=900px){.nf-body{margin-right:20px;padding-bottom:420px}}.nf .code-status{color:var(--muted);font:12px/1 var(--font-mono)}.nf h1{letter-spacing:-.03em;margin:12px 0;font-size:36px}.nf .start{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}@media (width<=1120px){.shell{grid-template-columns:232px minmax(0,1fr)}.shell>.toc-rail{display:none}}@media (width<=820px){.site-head{gap:8px;padding:0 12px}.lockup .tag,.head-link,.theme-toggle .label,.site-head .search-open kbd{display:none}.site-head .search-open{flex:1;width:auto;min-width:0;height:44px}.icon-control{min-width:44px;height:44px}.nav-drawer{display:inline-flex}.shell{display:block}.side{display:none}.side.open{z-index:30;top:var(--head-h);width:min(320px,100% - 44px);height:auto;display:block;position:fixed;bottom:0;left:0}.side a{padding:11px 8px}.scrim{z-index:20;inset:var(--head-h) 0 0;background:color-mix(in srgb, var(--bg) 72%, transparent);border:0;position:fixed}.main{width:calc(100% - 32px);padding-top:24px}body{font-size:16px}.prose h1{font-size:34px}.prose h1+p{font-size:16px}.button{min-height:44px}.pag{grid-template-columns:1fr}.pag .next{grid-column:1}.wyrd-defs{grid-template-columns:1fr}.wyrd-defs dt{border-bottom:0;padding-bottom:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.wyrd-mark.svelte-1fbsth1{flex:none;display:block}.wyrd-mark.svelte-1fbsth1 path:where(.svelte-1fbsth1){stroke:var(--text)}:root[data-theme=dark] .wyrd-mark.svelte-1fbsth1 path:where(.svelte-1fbsth1){stroke:var(--bg)}.w.svelte-1fbsth1{fill:var(--declare)}.s.svelte-1fbsth1{fill:var(--evidence)}.search-scrim.svelte-1002zyw{z-index:50;background:color-mix(in srgb, var(--bg) 72%, transparent);cursor:default;border:0;position:fixed;inset:0}.search-modal.svelte-1002zyw{z-index:51;background:var(--surface);border:1px solid var(--text);border-radius:var(--r);width:min(620px,100vw - 24px);position:fixed;top:12vh;left:50%;overflow:hidden;transform:translate(-50%)}.sm-bar.svelte-1002zyw{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:8px;display:flex}.sm-bar.svelte-1002zyw input:where(.svelte-1002zyw){border:1px solid var(--border);border-radius:var(--r);background:var(--bg);min-width:0;height:40px;color:var(--text);flex:1;padding:0 10px;font-size:16px}.sm-close.svelte-1002zyw{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);min-height:40px;color:var(--text);align-items:center;gap:6px;padding:0 10px;font-size:13px;display:inline-flex}.sm-close.svelte-1002zyw kbd:where(.svelte-1002zyw){color:var(--muted);font:11px var(--font-mono)}.sm-results.svelte-1002zyw{max-height:60vh;padding:6px;overflow-y:auto}.sm-note.svelte-1002zyw{color:var(--muted);margin:0;padding:14px;font-size:14px}.sm-hit.svelte-1002zyw{border-radius:var(--r);color:var(--text);border:1px solid #0000;flex-direction:column;gap:3px;padding:10px 12px;text-decoration:none;display:flex}.sm-hit.svelte-1002zyw:hover,.sm-hit.svelte-1002zyw:focus-visible{border-color:var(--declare);background:var(--declare-soft)}.sm-hit-title.svelte-1002zyw{font-weight:var(--weight-strong)}.sm-hit-ex.svelte-1002zyw{color:var(--muted);font-size:13px;line-height:1.45}.sm-hit-ex.svelte-1002zyw mark{color:var(--text);font-weight:var(--weight-strong);-webkit-text-decoration:underline 1px var(--declare);text-decoration:underline 1px var(--declare);text-underline-offset:2px;background:0 0}
