.icon[data-astro-cid-patnjmll]{display:inline-block;flex:0 0 auto;width:1em;height:1em;vertical-align:-.125em}@font-face{font-family:"Zen Serif";src:url(/fonts/zen-serif-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-grotesk.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--paper: #fdfcf9;--ink: #161616;--muted: rgba(22, 22, 22, .64);--line: rgba(22, 22, 22, .16);--grid: rgba(22, 22, 22, .08);--grid-faint: rgba(22, 22, 22, .04);--unit: 12px;--fig: #5a8a42;--fig-soft: #dfe7b3;--fig-pale: #e4eaa4;--font-display: "Zen Serif", Georgia, serif;--font-body: "Zen Serif", Georgia, serif;--font-ui: "Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;--r-media: 18px;--r-control: 13px;--glass-blur: 18px;--glass-fill: .15;--glass: rgba(242, 242, 240, var(--glass-fill));--glass-text: rgba(242, 242, 240, max(.5, var(--glass-fill)));--glass-read: rgba(244, 244, 242, max(.78, calc(var(--glass-fill) + .32)));--glass-read-blur: max(var(--glass-blur), 32px);--dur-fast: .18s;--dur-base: .46s;--dur-slow: .72s;--ease-out: cubic-bezier(.22, .8, .25, 1);--ease-ui: cubic-bezier(.4, 0, .2, 1)}.panel-mark[data-astro-cid-cpmzyuyv]{display:none}.panel[data-astro-cid-cpmzyuyv]{position:fixed;inset:auto;top:var(--panel-top, 52px);right:var(--panel-right, 12px);left:var(--panel-left, auto);margin:0;max-height:calc(100svh - 64px);overflow:auto;padding:16px;border:0;border-radius:var(--r-control);color:var(--ink);font:400 13px/1.5 var(--font-ui);opacity:0;translate:0 -6px;transition:opacity var(--dur-fast) var(--ease-ui),translate var(--dur-fast) var(--ease-ui),display var(--dur-fast) allow-discrete,overlay var(--dur-fast) allow-discrete}.panel[data-astro-cid-cpmzyuyv]:popover-open{opacity:1;translate:0 0}@starting-style{.panel[data-astro-cid-cpmzyuyv]:popover-open{opacity:0;translate:0 -6px}}.panel[data-astro-cid-cpmzyuyv]::backdrop{background:transparent}.panel--work[data-astro-cid-cpmzyuyv]{left:var(--work-left, calc(50% + 6px) );width:var(--work-w, auto)}.panel--about[data-astro-cid-cpmzyuyv]{width:var(--about-w, calc(25% - 15px) );min-width:280px}.filters[data-astro-cid-cpmzyuyv]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.chip[data-astro-cid-cpmzyuyv]{border:0;border-radius:8px;padding:4px 10px;font:400 11px/1.4 var(--font-ui);background:#1616160f;cursor:pointer;transition:background-color var(--dur-fast)}.chip[data-astro-cid-cpmzyuyv]:hover{background:#1616161a}.chip[data-astro-cid-cpmzyuyv][aria-pressed=true]:before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--fig);vertical-align:.05em}.index[data-astro-cid-cpmzyuyv]{width:100%;border-collapse:collapse}.index[data-astro-cid-cpmzyuyv] th[data-astro-cid-cpmzyuyv]{text-align:left;font-weight:400;font-size:11px;color:var(--muted);padding:0 12px 8px 0;border-bottom:1px solid var(--line)}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]{padding:9px 12px 9px 0;border-bottom:1px solid rgba(22,22,22,.08);vertical-align:baseline}.index[data-astro-cid-cpmzyuyv] a[data-astro-cid-cpmzyuyv]{text-decoration:none}.index[data-astro-cid-cpmzyuyv] a[data-astro-cid-cpmzyuyv]:hover{text-decoration:underline}.code[data-astro-cid-cpmzyuyv]{white-space:nowrap;color:var(--muted)}.panel--about[data-astro-cid-cpmzyuyv] h2[data-astro-cid-cpmzyuyv]{margin:16px 0 6px;padding-bottom:6px;border-bottom:1px solid var(--line);font-weight:400}.panel--about[data-astro-cid-cpmzyuyv] .panel-mark[data-astro-cid-cpmzyuyv]+h2[data-astro-cid-cpmzyuyv]{margin-top:0}.panel--about[data-astro-cid-cpmzyuyv] p[data-astro-cid-cpmzyuyv]{margin:0;max-width:44ch}.panel--about[data-astro-cid-cpmzyuyv] ul[data-astro-cid-cpmzyuyv]{margin:0;padding:0;list-style:none}.panel--about[data-astro-cid-cpmzyuyv] a[data-astro-cid-cpmzyuyv]{text-decoration:none}.panel--about[data-astro-cid-cpmzyuyv] a[data-astro-cid-cpmzyuyv]:hover{text-decoration:underline}.panel--about[data-astro-cid-cpmzyuyv] .more[data-astro-cid-cpmzyuyv]{margin-top:16px;padding-top:10px;border-top:1px solid var(--line)}@media(max-width:719px){.panel[data-astro-cid-cpmzyuyv]{top:calc(12px + env(safe-area-inset-top));left:12px;right:12px;bottom:var(--panel-bottom, calc(60px + env(safe-area-inset-bottom)) );width:auto;height:auto;min-width:0;max-height:none;padding:16px 16px 12px;container-type:inline-size;translate:0 6px}.panel[data-astro-cid-cpmzyuyv]:popover-open{display:flex;flex-direction:column}.index[data-astro-cid-cpmzyuyv] thead[data-astro-cid-cpmzyuyv]{display:none}.index[data-astro-cid-cpmzyuyv],.index[data-astro-cid-cpmzyuyv] tbody[data-astro-cid-cpmzyuyv]{display:block}.index[data-astro-cid-cpmzyuyv] tr[data-astro-cid-cpmzyuyv]{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"title title title" "code kind year";gap:6px 12px;padding:14px 0 12px;border-bottom:1px solid var(--line)}.index[data-astro-cid-cpmzyuyv] tr[data-astro-cid-cpmzyuyv][hidden]{display:none}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]{padding:0;border:0;font-size:12px;color:var(--muted)}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]:nth-child(1){grid-area:code}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]:nth-child(2){grid-area:title;font:400 30px/1.05 var(--font-display);color:var(--ink)}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]:nth-child(3){grid-area:kind}.index[data-astro-cid-cpmzyuyv] td[data-astro-cid-cpmzyuyv]:nth-child(5){grid-area:year}.index[data-astro-cid-cpmzyuyv] a[data-astro-cid-cpmzyuyv]:after{content:"";position:absolute;inset:0}.panel--about[data-astro-cid-cpmzyuyv] h2[data-astro-cid-cpmzyuyv]{margin-top:20px}.panel--about[data-astro-cid-cpmzyuyv] p[data-astro-cid-cpmzyuyv],.panel--about[data-astro-cid-cpmzyuyv] li[data-astro-cid-cpmzyuyv]{font-size:15px}.panel[data-astro-cid-cpmzyuyv] .panel-mark[data-astro-cid-cpmzyuyv]{display:block;flex:none;max-width:none;margin:4px -3px 0;padding-bottom:40px;font:400 28.6cqi/.8 var(--font-display);letter-spacing:-.035em;white-space:nowrap;color:var(--ink)}@starting-style{.panel[data-astro-cid-cpmzyuyv]:popover-open{translate:0 6px}}.hide-s[data-astro-cid-cpmzyuyv]{display:none}}@media(prefers-reduced-motion:reduce){.panel[data-astro-cid-cpmzyuyv]{transition:none}}.nav[data-astro-cid-4lunwx2e]{position:fixed;z-index:30;top:12px;left:12px;right:12px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}.pill[data-astro-cid-4lunwx2e]{display:flex;align-items:center;justify-content:space-between;gap:12px;height:32px;padding:0 12px;border:0;border-radius:var(--r-control);font:400 12px/1 var(--font-ui);color:var(--ink);text-decoration:none;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-ui)}.pill[data-astro-cid-4lunwx2e]:hover{background-color:#e8e8e6db}.nav-id[data-astro-cid-4lunwx2e]{grid-column:1 / 5}.nav-work[data-astro-cid-4lunwx2e]{grid-column:7 / 11}.nav-about[data-astro-cid-4lunwx2e]{grid-column:11 / 13}.nav-end[data-astro-cid-4lunwx2e]{display:inline-flex;align-items:center;gap:10px}.nav-count[data-astro-cid-4lunwx2e]{color:var(--muted)}.wordmark[data-astro-cid-4lunwx2e]{font:400 17px/1 var(--font-display)}.nav-role[data-astro-cid-4lunwx2e]{color:var(--muted)}@media(max-width:1100px){.nav-role-more[data-astro-cid-4lunwx2e]{display:none}}.nav[data-astro-cid-4lunwx2e] .caret{opacity:.6;transition:rotate var(--dur-fast) var(--ease-ui),opacity var(--dur-fast)}body:has(#work-panel:popover-open) .nav-work[data-astro-cid-4lunwx2e] .caret,body:has(#about-panel:popover-open) .nav-about[data-astro-cid-4lunwx2e] .caret{rotate:180deg;opacity:1}body:has(#work-panel:popover-open) .nav-work[data-astro-cid-4lunwx2e],body:has(#about-panel:popover-open) .nav-about[data-astro-cid-4lunwx2e]{background-color:#e8e8e6e6}@media(max-width:719px){.nav[data-astro-cid-4lunwx2e]{top:auto;bottom:calc(12px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.nav-id[data-astro-cid-4lunwx2e],.nav-work[data-astro-cid-4lunwx2e],.nav-about[data-astro-cid-4lunwx2e]{grid-column:auto}.nav-count[data-astro-cid-4lunwx2e],.nav-role[data-astro-cid-4lunwx2e]{display:none}.pill[data-astro-cid-4lunwx2e]{height:40px;font-size:13px;gap:8px}.nav[data-astro-cid-4lunwx2e] .caret{rotate:180deg}body:has(#work-panel:popover-open) .nav-work[data-astro-cid-4lunwx2e] .caret,body:has(#about-panel:popover-open) .nav-about[data-astro-cid-4lunwx2e] .caret{rotate:0deg}}@media(prefers-reduced-motion:reduce){.nav[data-astro-cid-4lunwx2e] .caret,.pill[data-astro-cid-4lunwx2e]{transition:none}}@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.42s;animation-timing-function:cubic-bezier(.22,.8,.25,1)}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}*{box-sizing:border-box}html{background-color:var(--paper);background-image:linear-gradient(to right,var(--grid-faint) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-faint) 1px,transparent 1px);background-size:var(--unit) var(--unit);color:var(--ink);font-family:var(--font-ui);font-size:16px;-webkit-text-size-adjust:100%;scrollbar-color:rgba(22,22,22,.28) transparent;scrollbar-width:thin}body{display:flow-root;margin:0;min-height:100svh;min-width:320px;color:var(--ink);caret-color:var(--fig);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}img,video{display:block;max-width:100%}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}button{font:inherit;color:inherit}::selection{background:var(--fig-soft);color:var(--ink)}:focus-visible{outline:2px solid var(--fig);outline-offset:2px}.glass,.glass-text,.glass-read{-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur))}.glass{background:var(--glass)}.glass-text{background:var(--glass-text)}.glass-read{background:var(--glass-read);-webkit-backdrop-filter:blur(var(--glass-read-blur));backdrop-filter:blur(var(--glass-read-blur))}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass,.glass-text,.glass-read{background:#f4f4f2f0}}.label{font:400 11px/1.3 var(--font-ui);color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
