:root,[data-theme=bumblebee],[data-theme=bumblebee].dark{--font-sans:"Libre Franklin", ui-sans-serif, system-ui, sans-serif;--font-wide:"Archivo", "Libre Franklin", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--yellow:#ffd21f;--yellow-soft:#fff1b0;--ink:#141210;--ink-2:#4a4538;--rule:#d9d4c4;--color-primary:#141210;--color-primary-foreground:#ffd21f;--color-secondary:#ffd21f;--color-secondary-foreground:#141210;--color-accent:#fff1b0;--color-accent-foreground:#141210;--color-background:#ffffff;--color-foreground:#141210;--color-muted:#fff1b0;--color-muted-foreground:#4a4538;--color-border:#d9d4c4;--color-card:#ffffff;--color-card-foreground:#141210;--color-popover:#ffffff;--color-popover-foreground:#141210;--radius:2px;color-scheme:light}html{background:#fff}*,*::before,*::after{box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;text-shadow:none!important}.pub a,.pub button,.pub article,.pub [class*="hover:"]{transform:none!important}.pub [class*=rounded]{border-radius:2px!important}.pub [class*=bg-linear],.pub [class*=bg-gradient]{background-image:none!important}.pub{background:#fff;color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:1.5;min-height:100vh;display:flex;flex-direction:column;caret-color:var(--ink);color-scheme:light;-webkit-font-smoothing:antialiased}.pub ::selection{background:var(--ink);color:var(--yellow)}.pub a{color:var(--ink)}.pub a:focus-visible,.pub button:focus-visible,.pub input:focus-visible,.pub summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.pub-pad{padding-left:clamp(20px,5vw,64px);padding-right:clamp(20px,5vw,64px)}.pub-top{background:var(--yellow);padding-top:22px;padding-bottom:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:3px solid var(--ink)}.pub-brand{display:flex;align-items:center;gap:10px;text-decoration:none}.pub-brand span{display:flex;flex-direction:column;line-height:1}.pub-brand strong{font-family:var(--font-wide);font-stretch:125%;font-weight:900;font-size:22px}.pub-brand small{font-size:12px;font-weight:600;color:var(--ink-2);margin-top:3px}.pub-top nav{display:flex;gap:22px;font-weight:600;font-size:15px}.pub-top nav a{text-decoration:none}.pub-top nav a:hover{text-decoration:underline;text-underline-offset:3px}.pub-main{flex:1;padding-top:56px;padding-bottom:80px;width:100%}.pub-title{font-family:var(--font-wide);font-stretch:125%;font-weight:900;font-size:clamp(40px,5vw,64px);line-height:.95;letter-spacing:-.03em;margin:0 0 16px;max-width:22ch;text-wrap:balance}.gf-h2{font-family:var(--font-wide);font-stretch:115%;font-weight:900;font-size:26px;line-height:1.05;margin:0 0 14px;text-wrap:balance}.pub-lede{font-size:19px;max-width:44ch;margin:0 0 30px}.pub-muted{color:var(--ink-2)}.pub .pub-cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;background:var(--ink);color:var(--yellow);font-weight:800;font-size:16px;text-decoration:none;border:2px solid var(--ink);border-radius:2px}.pub .pub-cta.ghost{background:0 0;color:var(--ink)}.gf-crumbs{display:flex;gap:8px;font-size:14px;font-weight:600;color:var(--ink-2);margin:0 0 18px}.gf-crumbs a{text-underline-offset:3px}.gf-list,.gf-related{max-width:68ch}.gf-rows{list-style:none;margin:0;padding:0;border-top:3px solid var(--ink)}.gf-rows>li{border-bottom:1px solid var(--rule)}.gf-row{display:flex;flex-direction:column;gap:6px;padding:20px 0;text-decoration:none}.gf-row-title{font-family:var(--font-wide);font-stretch:115%;font-weight:900;font-size:22px;line-height:1.1;text-wrap:balance}.gf-row:hover .gf-row-title{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}.gf-row-summary{color:var(--ink-2)}.gf-row-meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:0;font-size:14px;font-weight:600;color:var(--ink-2);font-variant-numeric:tabular-nums}.gf-more{margin:28px 0 0}.gf-post{max-width:68ch}.gf-post-head{margin-bottom:32px;padding-bottom:24px;border-bottom:3px solid var(--ink)}.gf-post-title{max-width:none;font-size:clamp(34px,4.4vw,56px)}.gf-post-lede{max-width:none;margin-bottom:18px}.gf-cover{display:block;width:100%;margin:0 0 32px;border:2px solid var(--ink);border-radius:2px}.pub .gf-prose{--tw-prose-body:var(--ink);--tw-prose-headings:var(--ink);--tw-prose-lead:var(--ink-2);--tw-prose-links:var(--ink);--tw-prose-bold:var(--ink);--tw-prose-counters:var(--ink-2);--tw-prose-bullets:var(--ink);--tw-prose-hr:var(--rule);--tw-prose-quotes:var(--ink);--tw-prose-quote-borders:var(--ink);--tw-prose-captions:var(--ink-2);--tw-prose-code:var(--ink);--tw-prose-th-borders:var(--ink);--tw-prose-td-borders:var(--rule);color:var(--ink);font-family:var(--font-sans);font-size:17px;line-height:1.65;max-width:none}.pub .gf-prose h2::before,.pub .gf-prose blockquote::before{content:none}.pub .gf-prose h2{padding-left:0}.pub .gf-prose h2,.pub .gf-prose h3,.pub .gf-prose h4{font-family:var(--font-wide);font-weight:900;line-height:1.1;letter-spacing:-.01em;color:var(--ink);text-wrap:balance}.pub .gf-prose h2{font-stretch:115%;font-size:28px;margin-top:2em}.pub .gf-prose h3{font-stretch:110%;font-size:21px}.pub .gf-prose a{color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.pub .gf-prose a:hover{text-decoration-thickness:2px}.pub .gf-prose code,.pub .gf-prose pre,.pub .gf-prose kbd{font-family:var(--font-mono)}.pub .gf-prose :not(pre)>code{background:var(--yellow-soft);padding:1px 5px;border-radius:2px;font-weight:500}.pub .gf-prose :not(pre)>code::before,.pub .gf-prose :not(pre)>code::after{content:none}.pub .gf-prose pre{border:2px solid var(--ink);border-radius:2px}.pub .gf-prose img{border:2px solid var(--ink);border-radius:2px}.pub .gf-prose blockquote{border-left:3px solid var(--ink);font-style:normal}.pub .gf-prose hr{border-top:3px solid var(--ink)}.pub .gf-prose table{font-variant-numeric:tabular-nums}.pub .gf-prose thead{border-bottom:2px solid var(--ink)}.pub .gf-prose mark{background:var(--yellow);color:var(--ink)}.gf-postfoot{margin:40px 0 0;border-top:3px solid var(--ink)}.gf-postfoot>div{display:flex;flex-wrap:wrap;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:15px}.gf-postfoot dt{font-weight:700;min-width:9ch}.gf-postfoot dd{margin:0;color:var(--ink-2)}.gf-postfoot a{color:var(--ink);text-underline-offset:3px}.gf-postnav{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0 24px;margin:40px 0;border-top:3px solid var(--ink)}.gf-postnav a{display:flex;flex-direction:column;gap:4px;padding:16px 0;border-bottom:1px solid var(--rule);text-decoration:none}.gf-postnav small{font-size:13px;font-weight:700;color:var(--ink-2)}.gf-postnav span{font-weight:700;line-height:1.3}.gf-postnav a:hover span{text-decoration:underline;text-underline-offset:3px}.gf-related{margin:48px 0 0}.pub .pagination{max-width:68ch}.pub .pagination>div{justify-content:flex-start}.pub .pagination a,.pub .pagination span[class*=border]{border:2px solid var(--ink);font-weight:700}.pub #dock nav{background:#fff;border:2px solid var(--ink)}.colophon{background:var(--yellow);color:var(--ink);border-top:3px solid var(--ink);padding:44px clamp(20px,5vw,64px)30px;display:flex;flex-direction:column;gap:14px;font-family:var(--font-sans);font-size:16px;line-height:1.5}.colophon ::selection{background:var(--ink);color:var(--yellow)}.colophon .mark{width:32px;height:32px}.colophon .name{font-family:var(--font-wide);font-stretch:125%;font-weight:900;font-size:30px;line-height:1;margin:0}.colophon .line{margin:0;font-weight:500}.colophon .links{display:flex;flex-wrap:wrap;gap:6px 20px;font-weight:600;font-size:15px}.colophon a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.colophon a:hover{text-decoration-thickness:2px}.colophon a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.colophon .studio{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;padding-top:14px;border-top:1px solid rgba(20,18,16,.35)}.colophon .legal{margin:0;font-size:13px}