@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-ext-wght-normal.B5bTHO_g.woff2)format("woff2-variations");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:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-wght-normal.BbzFLZTg.woff2)format("woff2-variations");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{--bg:#e8ecf0;--ink:#141a21;--muted:#4e5966;--faint:#d6dde4;--panel:#f1f4f7;--panel-shadow:0 1px 0 #ffffffb3 inset, 0 30px 70px -40px #14203047;--accent:#2f64b0;--font:"Instrument Sans Variable", ui-sans-serif, system-ui, sans-serif;--ease:cubic-bezier(.23, 1, .32, 1);--spring:cubic-bezier(.32, .72, 0, 1);color-scheme:light}:root[data-theme=dark]{--bg:#0b1016;--ink:#e6ebf0;--muted:#8693a1;--faint:#243040;--panel:#0f151c;--panel-shadow:0 1px 0 #ffffff0a inset, 0 40px 90px -40px #000000b3;--accent:#79a8f0;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b1016;--ink:#e6ebf0;--muted:#8693a1;--faint:#243040;--panel:#0f151c;--panel-shadow:0 1px 0 #ffffff0a inset, 0 40px 90px -40px #000000b3;--accent:#79a8f0;color-scheme:dark}}canvas.wake{z-index:-1;pointer-events:none;opacity:0;width:100vw;height:100vh;transition:opacity .3s;position:fixed;inset:0}canvas.wake.on{opacity:1}main{background:color-mix(in oklab, var(--panel) 80%, transparent);backdrop-filter:blur(12px)saturate(1.15);box-shadow:var(--panel-shadow);border-radius:20px}@media (width>=900px){main{margin-block:2.5rem}}@media (width<=899px){main{border-radius:16px;margin:.75rem}}@view-transition{navigation:auto}main{view-transition-name:panel}::view-transition-group(panel){animation-duration:.42s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-old(panel),::view-transition-new(panel){object-fit:none;object-position:top center;width:100%;height:100%;overflow:clip}::view-transition-old(panel){animation:.13s cubic-bezier(.4,0,1,1) both vt-out}::view-transition-new(panel){animation:.42s cubic-bezier(.32,.72,0,1) .1s both vt-in}:root[data-vt=back]::view-transition-old(panel){animation-name:vt-out-back}:root[data-vt=back]::view-transition-new(panel){animation-name:vt-in-back}@keyframes vt-out{to{opacity:0;transform:translate(-18px)}}@keyframes vt-in{0%{opacity:0;transform:translate(32px)}}@keyframes vt-out-back{to{opacity:0;transform:translate(18px)}}@keyframes vt-in-back{0%{opacity:0;transform:translate(-32px)}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:.42s step-end both vt-hold}@keyframes vt-hold{0%{opacity:0}to{opacity:1}}::view-transition-group(*.post-title){animation-duration:.42s;animation-timing-function:cubic-bezier(.32,.72,0,1)}::view-transition-old(*.post-title){opacity:0;animation:none}::view-transition-new(*.post-title){animation:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}@media (pointer:fine){html{overscroll-behavior:none}}a,button,[role=group]{touch-action:manipulation}body{isolation:isolate;background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01";margin:0;font-size:1rem;line-height:1.55;transition:background-color .4s,color .4s;position:relative}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.link{text-decoration:underline;text-decoration-color:color-mix(in oklab, var(--ink) 25%, transparent);text-underline-offset:.22em;transition:text-decoration-color .2s var(--ease), color .2s var(--ease);text-decoration-thickness:1px}@media (hover:hover) and (pointer:fine){.link:hover{color:var(--accent);text-decoration-color:var(--accent)}}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:color-mix(in oklab, var(--accent) 22%, transparent)}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:0s!important}}
