@font-face{font-family:CMU Serif;src:url(/fonts/cmu-serif-500-roman.woff2)format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:CMU Serif;src:url(/fonts/cmu-serif-500-italic.woff2)format("woff2");font-weight:400 500;font-style:italic;font-display:swap}@font-face{font-family:CMU Serif;src:url(/fonts/cmu-serif-700-roman.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}@font-face{font-family:CMU Serif;src:url(/fonts/cmu-serif-700-italic.woff2)format("woff2");font-weight:600 800;font-style:italic;font-display:swap}@font-face{font-family:Concrete;src:url(/fonts/cmu-concrete-500-roman.woff2)format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:Concrete;src:url(/fonts/cmu-concrete-500-italic.woff2)format("woff2");font-weight:400 500;font-style:italic;font-display:swap}@font-face{font-family:Concrete;src:url(/fonts/cmu-concrete-700-roman.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}@font-face{font-family:CMU Sans;src:url(/fonts/cmu-sans-serif-500-roman.woff2)format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:CMU Sans;src:url(/fonts/cmu-sans-serif-500-italic.woff2)format("woff2");font-weight:400 500;font-style:italic;font-display:swap}@font-face{font-family:CMU Sans;src:url(/fonts/cmu-sans-serif-700-roman.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}@font-face{font-family:CMU Typewriter;src:url(/fonts/cmu-typewriter-text-500-roman.woff2)format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:CMU Typewriter;src:url(/fonts/cmu-typewriter-text-700-roman.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}:root{--paper:#f4f5f2;--paper-sunk:#eaece6;--paper-raised:#fbfbf9;--ink:#14161a;--ink-soft:#2c3037;--graphite:#555b64;--faded:#5f656e;--rule:#cfd2ca;--rule-soft:#e0e2dc;--mint:#5ef2b8;--mint-wash:#d3fbe9;--mint-deep:#0e6b48;--alert:#9b1c1c;--alert-wash:#fbe7e4;--serif:"CMU Serif", "Latin Modern Roman", "Computer Modern", Georgia, serif;--read:"Concrete", "CMU Serif", Georgia, serif;--sans:"CMU Sans", "Latin Modern Sans", "Helvetica Neue", Arial, sans-serif;--mono:"CMU Typewriter", "Latin Modern Mono", ui-monospace, Menlo, Consolas, monospace;--step--1:.8125rem;--step-0:.9375rem;--step-1:1.125rem;--step-2:1.375rem;--step-3:clamp(1.6rem, 1.2rem + 1.6vw, 2.25rem);--step-4:clamp(2.1rem, 1.4rem + 2.8vw, 3.5rem);--step-5:clamp(2.6rem, 1.6rem + 4.4vw, 5.25rem);--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4.5rem;--s9:7rem;--measure:68ch;--wrap:1200px;--gutter:clamp(1rem, .6rem + 2vw, 2.5rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-color:var(--graphite) var(--paper-sunk);scroll-padding-top:5rem}body{background:var(--paper);color:var(--ink);font-family:var(--read);font-size:var(--step-1);font-kerning:normal;font-variant-ligatures:common-ligatures;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100dvh;margin:0;line-height:1.6;display:flex}main{flex:1}::selection{background:var(--mint);color:var(--ink)}input,textarea{caret-color:var(--mint-deep)}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.012em;text-wrap:balance;margin:0;font-weight:700;line-height:1.12}p{margin:0 0 var(--s4);text-wrap:pretty}a{color:inherit;text-decoration-line:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);text-underline-offset:.2em;transition:text-decoration-color .16s var(--ease-out);text-decoration-thickness:1px}a:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 6px var(--mint);border-radius:2px}code,kbd,samp{font-family:var(--mono);font-size:.92em}hr{border:0;border-top:1px solid var(--rule);margin:var(--s6) 0}.wrap{width:100%;max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto}.narrow{max-width:820px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{left:var(--s4);background:var(--ink);color:var(--paper);padding:var(--s2) var(--s4);z-index:50;font-family:var(--sans);position:absolute;top:-100px}.skip:focus{top:var(--s3)}.ui{font-family:var(--sans);font-size:var(--step-0);line-height:1.45}.meta{font-family:var(--sans);font-size:var(--step--1);color:var(--graphite);line-height:1.5}.mono{font-family:var(--mono)}.caps{font-family:var(--sans);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--graphite)}.hl{background:linear-gradient(transparent 52%, var(--mint) 52%, var(--mint) 92%, transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .08em}.ident{font-family:var(--mono);color:var(--ink);background-image:linear-gradient(var(--mint), var(--mint));transition:background-size .42s var(--ease-out);white-space:nowrap;background-position:0 78%;background-repeat:no-repeat;background-size:0% 62%;padding:0 .1em;font-size:.875em;text-decoration:none}a.ident:hover,a.ident:focus-visible,.entry:hover .ident,.entry:focus-within .ident{background-size:100% 62%}.mast{border-bottom:1px solid var(--ink);background:var(--paper);z-index:20;position:sticky;top:0}.mast-inner{align-items:center;gap:var(--s5);min-height:3.5rem;display:flex}.mast-mark{font-family:var(--serif);align-items:baseline;gap:.45rem;font-size:1.85rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.mast-mark small{font-family:var(--sans);font-weight:500;font-size:var(--step--1);color:var(--graphite);letter-spacing:.02em}.mast-nav{gap:var(--s1);margin-left:var(--s3);scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.mast-nav a{font-family:var(--sans);font-size:var(--step-0);color:var(--ink-soft);white-space:nowrap;border-radius:2px;padding:.45rem .65rem;text-decoration:none}.mast-nav a:hover{background:var(--paper-sunk);color:var(--ink)}.mast-nav a[aria-current=page]{color:var(--ink);background:linear-gradient(transparent 60%, var(--mint) 60%, var(--mint) 88%, transparent 88%)}.mast-end{align-items:center;gap:var(--s4);margin-left:auto;display:flex}.mast-search{border:1px solid var(--rule);background:var(--paper-raised);align-items:center;gap:.4rem;height:2.25rem;padding:0 .6rem;display:flex}.mast-search:focus-within{border-color:var(--ink)}.mast-search input{font-family:var(--sans);font-size:var(--step-0);width:11rem;color:var(--ink);background:0 0;border:0;outline:none}.mast-search input::placeholder{color:var(--faded)}.observer{font-family:var(--sans);font-size:var(--step--1);color:var(--graphite);white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.observer svg{flex:none}@media (max-width:1020px){.mast-search{display:none}}@media (min-width:1021px){.nav-search{display:none}}@media (max-width:760px){.mast-inner{gap:0 var(--s3);padding-top:var(--s2);flex-wrap:wrap}.mast-nav{width:calc(100% + 2 * var(--gutter));margin:0 calc(-1 * var(--gutter));padding:0 calc(var(--gutter) + 2.5rem) var(--s2) var(--gutter);order:3;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.observer span{display:none}}.btn{font-family:var(--sans);font-weight:700;font-size:var(--step-0);border:1px solid var(--ink);cursor:pointer;min-height:2.75rem;transition:background-color .16s var(--ease-out), color .16s var(--ease-out), transform .16s var(--ease-out);border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.15rem;line-height:1;text-decoration:none;display:inline-flex}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--ink-soft)}.btn-line{color:var(--ink);background:0 0}.btn-line:hover{background:var(--mint)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn-sm{min-height:2.1rem;font-size:var(--step--1);padding:0 .8rem}.pagehead{padding:var(--s7) 0 var(--s5);border-bottom:1px solid var(--rule);margin-bottom:var(--s5)}.pagehead h1{font-size:var(--step-4)}.pagehead p{color:var(--ink-soft);max-width:var(--measure);margin:var(--s3) 0 0}.pagehead .meta{margin-top:var(--s3)}.tabs{gap:var(--s1);border-bottom:1px solid var(--rule);margin-bottom:var(--s4);scrollbar-width:none;display:flex;overflow:auto hidden}.tabs a{font-family:var(--sans);font-size:var(--step-0);color:var(--graphite);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.6rem .85rem;text-decoration:none}.tabs a:hover{color:var(--ink)}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink);font-weight:700}.subjects{margin:0 0 var(--s5);flex-wrap:wrap;gap:.35rem .5rem;padding:0;list-style:none;display:flex}.subjects a{font-family:var(--mono);font-size:var(--step--1);border:1px solid var(--rule);color:var(--ink-soft);background:var(--paper-raised);padding:.2rem .55rem;text-decoration:none}.subjects a:hover{border-color:var(--ink)}.subjects a[aria-current=page]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.empty{border-top:1.5px solid var(--ink);border-bottom:1px solid var(--rule);padding:var(--s5) 0;margin:var(--s4) 0}.empty h2,.empty h3{font-size:var(--step-2);margin-bottom:var(--s2)}.empty p{color:var(--ink-soft);max-width:var(--measure)}.empty p:last-child{margin-bottom:0}.notice{border:1px solid var(--ink);background:var(--mint-wash);padding:var(--s3) var(--s4);font-family:var(--sans);font-size:var(--step-0)}.notice.alert{background:var(--alert-wash);border-color:var(--alert);color:#5c1010}.public-banner{align-items:center;gap:var(--s3);border:1px solid var(--ink);padding:var(--s3) var(--s4);background:var(--mint);font-family:var(--sans);font-weight:700;font-size:var(--step-0);letter-spacing:.06em;text-transform:uppercase;display:flex}.public-banner span{text-transform:none;letter-spacing:0;font-weight:500}.counters{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.counter{padding:var(--s3) var(--s3) var(--s3) 0}.counter+.counter{padding-left:var(--s3);border-left:1px solid var(--rule)}.counter-label{margin-top:var(--s2);font-family:var(--sans);font-size:var(--step--1);color:var(--graphite);display:block}.digits{font-family:var(--mono);gap:2px;font-size:clamp(1.35rem,1rem + 1.4vw,2.25rem);font-weight:700;line-height:1;display:flex}.digits span{text-align:center;min-width:1ch;display:inline-block}.digits .lead{color:var(--faded);font-weight:400}.colophon{border-top:1px solid var(--ink);margin-top:var(--s7);padding:var(--s6) 0 var(--s7);background:var(--paper-sunk)}.colophon-grid{gap:var(--s6);grid-template-columns:1.4fr repeat(3,1fr);display:grid}.colophon h2{font-family:var(--sans);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--graphite);margin-bottom:var(--s3);font-weight:700}.colophon ul{font-family:var(--sans);font-size:var(--step-0);gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.colophon ul a{text-decoration:none}.colophon ul a:hover{text-decoration:underline}.colophon .mark{font-family:var(--serif);font-size:3rem;font-weight:700;line-height:1}.colophon p{font-size:var(--step-0);color:var(--ink-soft);max-width:36ch}@media (max-width:760px){.colophon-grid{grid-template-columns:1fr 1fr}.colophon-grid>:first-child{grid-column:1/-1}}.field{margin-bottom:var(--s4);gap:.35rem;display:grid}.field label{font-family:var(--sans);font-size:var(--step-0);font-weight:700}.input,.select,.textarea{font:inherit;font-family:var(--sans);font-size:var(--step-0);border:1px solid var(--graphite);background:var(--paper-raised);color:var(--ink);border-radius:2px;width:100%;min-height:2.75rem;padding:.6rem .75rem}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--ink);outline-offset:1px;border-color:var(--ink)}.textarea{resize:vertical;min-height:6rem}pre.code{font-family:var(--mono);background:var(--paper-raised);color:var(--ink);padding:var(--s4);margin:var(--s4) 0;border-top:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);tab-size:2;font-size:.875rem;line-height:1.6;overflow-x:auto}pre.code .c{color:var(--graphite);font-style:italic}pre.code .k{font-weight:700}:not(pre)>code{background:var(--paper-sunk);border-radius:2px;padding:.05em .3em}.table{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:var(--step-0);font-variant-numeric:tabular-nums}.table th,.table td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:.55rem .6rem}.table th{font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--graphite);border-bottom-color:var(--ink);font-weight:700}.table-wrap{overflow-x:auto}.avatar{width:var(--size,2.5rem);height:var(--size,2.5rem);border:1px solid var(--ink);background:var(--paper-raised);font-family:var(--serif);font-weight:700;font-size:calc(var(--size,2.5rem) * .48);color:var(--ink);flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar:after{content:"";background:var(--accent,var(--mint));height:22%;position:absolute;bottom:0;left:0;right:0}.avatar img+*{display:none}.avatar:has(img):after{display:none}.avatar span{z-index:1;position:relative;transform:translateY(-6%)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.mast,.colophon,.tabs,.more,.btn{display:none!important}body{background:#fff}}
