.site-nav[data-astro-cid-rutobish]{flex-wrap:wrap;gap:.4rem;display:flex}a[data-astro-cid-rutobish]{border:1px solid var(--border-color);background:linear-gradient(var(--highlight), transparent), var(--surface-color);box-shadow:inset 0 1px 0 var(--highlight), 0 1px 1px var(--shade);color:inherit;text-shadow:0 1px 0 var(--highlight);border-radius:3px;padding:.25rem .75rem;font-size:.9375rem;text-decoration:none}a[data-astro-cid-rutobish]:hover{border-color:color-mix(in srgb, currentColor 40%, var(--border-color));background:linear-gradient(var(--highlight), var(--highlight)), var(--surface-color);text-decoration:none}a[data-astro-cid-rutobish][aria-current=page],a[data-astro-cid-rutobish]:active{background:var(--surface-alt-color);box-shadow:inset 0 1px 3px var(--shade);font-weight:700}a[data-astro-cid-rutobish]:focus-visible{outline-offset:2px;outline:2px solid}.theme-toggle[data-astro-cid-l6lhmie6]{z-index:10;width:2.5rem;height:2.5rem;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:fixed;inset-block-start:1rem;inset-inline-end:1rem}.theme-toggle[data-astro-cid-l6lhmie6]:hover{opacity:.65}.theme-toggle[data-astro-cid-l6lhmie6]:focus-visible{outline-offset:3px;outline:2px solid}.theme-icon[data-astro-cid-l6lhmie6]{display:block}.theme-icon[data-astro-cid-l6lhmie6][hidden]{display:none}@font-face{font-family:Berkeley Mono;src:url(/_astro/BerkeleyMono-Regular.D6XhJ3Qb.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(/_astro/BerkeleyMono-Bold.DMlyvPbh.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(/_astro/BerkeleyMono-Oblique.CCMQ06mX.woff2)format("woff2");font-weight:400;font-style:oblique;font-display:swap}@font-face{font-family:Berkeley Mono;src:url(/_astro/BerkeleyMono-Bold-Oblique.9U0rmlnI.woff2)format("woff2");font-weight:700;font-style:oblique;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Next;src:url(/_astro/AtkinsonHyperlegibleNext-Regular.FfmJh7DR.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Next;src:url(/_astro/AtkinsonHyperlegibleNext-Italic.DZBmTazM.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Atkinson Hyperlegible Next;src:url(/_astro/AtkinsonHyperlegibleNext-Bold.Dpiyiu63.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{color-scheme:light;--background-color:#f6f6ef;--surface-color:#fdfdf9;--surface-alt-color:#efeee4;--border-color:#cfccbc;--link-color:#834e21;--link-out-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23834e21' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E");--highlight:#ffffffa6;--shade:#463c1e33;--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0.6 0 0 0 -0.22'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--grain-soft:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.45 0 0 0 0 0.45 0.3 0 0 0 -0.12'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--font-mono:"Berkeley Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-text:"Atkinson Hyperlegible Next", Verdana, system-ui, sans-serif;font-family:var(--font-text);font-size:1.0625rem;line-height:1.65}h1,h2,h3,h4,nav,time,code,pre,kbd{font-family:var(--font-mono)}h1,h2,h3,h4{line-height:1.3}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--background-color:#181818;--surface-color:#1f1f1e;--surface-alt-color:#272725;--border-color:#3d3c38;--link-color:#cd8237;--link-out-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23cd8237' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E");--highlight:#ffffff12;--shade:#0000008c;--grain:var(--grain-soft)}}:root[data-theme=light]{color-scheme:light;--background-color:#f6f6ef;--surface-color:#fdfdf9;--surface-alt-color:#efeee4;--border-color:#cfccbc;--link-color:#834e21;--link-out-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23834e21' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E");--highlight:#ffffffa6;--shade:#463c1e33}:root[data-theme=dark]{color-scheme:dark;--background-color:#181818;--surface-color:#1f1f1e;--surface-alt-color:#272725;--border-color:#3d3c38;--link-color:#cd8237;--link-out-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23cd8237' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E");--highlight:#ffffff12;--shade:#0000008c;--grain:var(--grain-soft)}html,body{background-color:var(--background-color)}body{margin:0}main{box-sizing:border-box;width:min(100% - 2rem,52rem);margin:0 auto;padding:3rem 0}.window{--stitch:1px dashed color-mix(in srgb, currentColor 28%, transparent);border:1px solid var(--border-color);background:var(--grain), var(--surface-color);box-shadow:inset 0 1px 0 var(--highlight), 0 1px 2px var(--shade), 0 24px 48px -24px var(--shade);border-radius:4px;overflow:hidden}.toolbar{border-bottom:1px solid var(--border-color);background:linear-gradient(var(--highlight), transparent), var(--surface-alt-color);box-shadow:inset 0 1px 0 var(--highlight), 0 1px 3px var(--shade);padding:.6rem 1rem}.stitched{position:relative}.stitched:after{content:"";inset:var(--stitch-inset,.6rem);border:var(--stitch);pointer-events:none;border-radius:2px;position:absolute}.window-body{box-shadow:inset 0 8px 10px -8px var(--shade);padding:2.5rem}.window-body>:first-child{margin-top:0}.window-footer{border-top:1px solid var(--border-color);background:var(--grain), linear-gradient(var(--highlight), transparent), var(--surface-alt-color);box-shadow:inset 0 1px 0 var(--highlight);font-family:var(--font-mono);justify-content:flex-end;padding:.75rem 2rem;font-size:.8125rem;display:flex}@media (width<=36rem){.toolbar{padding-inline:.75rem}.window-body,.window-footer{padding-inline:1.25rem}}@media (width<=52rem){main{padding-top:4.5rem}}@media (width>=56rem){main.site-main--wide{width:min(100% - 4rem,64rem)}}a{color:var(--link-color);text-decoration:none}a:hover,a:focus-visible{text-underline-offset:.2em;text-decoration:underline}a:focus-visible{outline-offset:2px;outline:2px solid}a[href^=http]:not([href^="https://richardparayno.com"]):after{content:" ";background:var(--link-out-icon) no-repeat right center / .7em;padding-inline-end:.7em}@media (forced-colors:active){a[href^=http]:not([href^="https://richardparayno.com"]):after{forced-color-adjust:none;background:linktext;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E") 100%/.7em no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3h7v7'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 14v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h5'/%3E%3C/svg%3E") 100%/.7em no-repeat}}img{max-width:100%;height:auto}pre{padding:1rem;overflow-x:auto}code{overflow-wrap:anywhere}blockquote{border-inline-start:.2rem solid;margin-inline:0;padding-inline-start:1rem}
