:root{--font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "URW Palladio L", "Book Antiqua", Georgia, serif;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-xs: clamp(.8125rem, .795rem + .08vw, .875rem);--text-sm: clamp(.9375rem, .92rem + .08vw, 1rem);--text-base: clamp(1.0625rem, 1.045rem + .08vw, 1.125rem);--text-lg: clamp(1.1875rem, 1.14rem + .22vw, 1.3125rem);--text-xl: clamp(1.375rem, 1.3rem + .38vw, 1.625rem);--text-2xl: clamp(1.625rem, 1.5rem + .63vw, 2rem);--text-3xl: clamp(2rem, 1.7rem + 1.5vw, 2.875rem);--leading-tight: 1.15;--leading-snug: 1.4;--leading-normal: 1.65;--leading-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--space-24: 6rem;--space-page-x: clamp(1.25rem, .9rem + 1.75vw, 2rem);--space-page-top: clamp(2rem, 1.25rem + 3.75vw, 5rem);--space-page-bottom: clamp(3rem, 2rem + 5vw, 7rem);--measure: 38rem;--duration-fast: .12s;--duration-normal: .2s;--ease-out: cubic-bezier(.16, 1, .3, 1)}:root,:root[data-theme=light]{color-scheme:light;--color-bg: #fbfaf7;--color-surface: #f4f2ec;--color-text: #1a1a1a;--color-text-muted: #55544f;--color-text-faint: #8a887f;--color-rule: #e4e1d7;--color-link: #1a1a1a;--color-link-underline: #c9c5b6;--color-accent: #b8542e}:root[data-theme=dark]{color-scheme:dark;--color-bg: #141413;--color-surface: #1e1d1b;--color-text: #eceae3;--color-text-muted: #a8a69e;--color-text-faint: #6e6c65;--color-rule: #2b2a28;--color-link: #eceae3;--color-link-underline: #3f3d39;--color-accent: #d97757}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--color-bg: #141413;--color-surface: #1e1d1b;--color-text: #eceae3;--color-text-muted: #a8a69e;--color-text-faint: #6e6c65;--color-rule: #2b2a28;--color-link: #eceae3;--color-link-underline: #3f3d39;--color-accent: #d97757}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--color-bg);color:var(--color-text);font-family:var(--font-serif);font-size:100%;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-size:var(--text-base);min-height:100vh;transition:background-color var(--duration-normal) var(--ease-out),color var(--duration-normal) var(--ease-out)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:var(--leading-tight);letter-spacing:-.01em;margin:0 0 var(--space-4);color:var(--color-text);overflow-wrap:break-word}h1{font-size:var(--text-3xl);letter-spacing:-.02em}p,li{overflow-wrap:break-word}h2{font-size:var(--text-2xl);margin-top:var(--space-12)}h3{font-size:var(--text-xl);margin-top:var(--space-8)}p{margin:0 0 var(--space-6)}a{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline);text-decoration-thickness:1px;text-underline-offset:.2em;transition:text-decoration-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}a:hover{text-decoration-color:var(--color-text)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:2px}strong{font-weight:600}em{font-style:italic}small{font-size:var(--text-sm);color:var(--color-text-muted)}hr{border:0;border-top:1px solid var(--color-rule);margin:var(--space-12) 0}blockquote{margin:var(--space-6) 0;padding-left:var(--space-6);border-left:2px solid var(--color-rule);color:var(--color-text-muted);font-style:italic}ul,ol{margin:0 0 var(--space-6);padding-left:var(--space-6)}li{margin-bottom:var(--space-2)}code{font-family:var(--font-mono);font-size:.9em;background:var(--color-surface);padding:.15em .35em;border-radius:3px}pre{font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-snug);background:var(--color-surface);padding:var(--space-4);border-radius:4px;overflow-x:auto;margin:var(--space-6) 0}pre code{background:transparent;padding:0}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}h2,h3,h4,h5,h6{position:relative}.heading-anchor{margin-left:.4em;color:var(--color-text-faint);text-decoration:none;font-weight:400;opacity:0;transition:opacity var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}h2:hover>.heading-anchor,h3:hover>.heading-anchor,h4:hover>.heading-anchor,.heading-anchor:focus-visible{opacity:1}.heading-anchor:hover{color:var(--color-text)}.markdown-alert{margin:var(--space-6) 0;padding:var(--space-4) var(--space-6);border-left:3px solid var(--color-rule);background:var(--color-surface);border-radius:0 4px 4px 0;color:var(--color-text-muted)}.markdown-alert>:last-child{margin-bottom:0}.markdown-alert-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-family:var(--font-sans);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2);color:var(--color-text)}.markdown-alert-title svg{width:16px;height:16px;flex-shrink:0}.markdown-alert-note{border-left-color:#3b82f6}.markdown-alert-note .markdown-alert-title{color:#3b82f6}.markdown-alert-tip{border-left-color:#10b981}.markdown-alert-tip .markdown-alert-title{color:#10b981}.markdown-alert-important{border-left-color:#8b5cf6}.markdown-alert-important .markdown-alert-title{color:#8b5cf6}.markdown-alert-warning{border-left-color:#f59e0b}.markdown-alert-warning .markdown-alert-title{color:#f59e0b}.markdown-alert-caution{border-left-color:#ef4444}.markdown-alert-caution .markdown-alert-title{color:#ef4444}img,video{max-width:100%;height:auto;display:block}::selection{background:var(--color-accent);color:var(--color-bg)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.container{max-width:var(--measure);margin:0 auto;padding:0 var(--space-page-x)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.15s;animation-timing-function:var(--ease-out)}::view-transition-old(root){animation-name:fade-out}::view-transition-new(root){animation-name:fade-in}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.theme-toggle[data-astro-cid-x3pjskd3]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;margin:0;background:transparent;border:1px solid var(--color-rule);border-radius:999px;color:var(--color-text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out)}.theme-toggle[data-astro-cid-x3pjskd3]:hover{color:var(--color-text);border-color:var(--color-text-muted)}.theme-toggle[data-astro-cid-x3pjskd3] .icon[data-astro-cid-x3pjskd3]{display:none}:root[data-theme=light] .theme-toggle[data-astro-cid-x3pjskd3] .icon-moon[data-astro-cid-x3pjskd3],:root:not([data-theme=dark]) .theme-toggle[data-astro-cid-x3pjskd3] .icon-moon[data-astro-cid-x3pjskd3]{display:block}:root[data-theme=dark] .theme-toggle[data-astro-cid-x3pjskd3] .icon-sun[data-astro-cid-x3pjskd3]{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme]) .theme-toggle[data-astro-cid-x3pjskd3] .icon-moon[data-astro-cid-x3pjskd3]{display:none}:root:not([data-theme]) .theme-toggle[data-astro-cid-x3pjskd3] .icon-sun[data-astro-cid-x3pjskd3]{display:block}}.site-header[data-astro-cid-ctg3m53h]{padding:var(--space-page-top) 0 var(--space-6)}.site-header__inner[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap;row-gap:var(--space-4)}.site-header__brand[data-astro-cid-ctg3m53h]{font-family:var(--font-serif);font-size:var(--text-base);font-weight:600;text-decoration:none;letter-spacing:-.01em;color:var(--color-text);margin-right:auto}.site-header__brand[data-astro-cid-ctg3m53h]:hover{color:var(--color-text)}.site-header__nav[data-astro-cid-ctg3m53h] ul[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:var(--space-6);list-style:none;margin:0;padding:0}.site-header__nav[data-astro-cid-ctg3m53h] li[data-astro-cid-ctg3m53h]{margin:0}.site-header__link[data-astro-cid-ctg3m53h]{font-size:var(--text-sm);text-decoration:none;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out)}.site-header__link[data-astro-cid-ctg3m53h]:hover,.site-header__link[data-astro-cid-ctg3m53h].is-active{color:var(--color-text)}@media(max-width:540px){.site-header__inner[data-astro-cid-ctg3m53h]{gap:var(--space-4)}.site-header__nav[data-astro-cid-ctg3m53h]{order:3;flex-basis:100%}.site-header__nav[data-astro-cid-ctg3m53h] ul[data-astro-cid-ctg3m53h]{gap:var(--space-5, 1.25rem);justify-content:flex-start}}.site-footer[data-astro-cid-gcn2mc3v]{margin-top:var(--space-24);padding:var(--space-8) 0 var(--space-12);border-top:1px solid var(--color-rule);font-size:var(--text-sm);color:var(--color-text-muted)}.site-footer__inner[data-astro-cid-gcn2mc3v]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4)}.site-footer[data-astro-cid-gcn2mc3v] p[data-astro-cid-gcn2mc3v]{margin:0}.site-footer[data-astro-cid-gcn2mc3v] span[data-astro-cid-gcn2mc3v]{margin:0 var(--space-2);color:var(--color-text-faint)}.site-footer[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]{color:var(--color-text-muted);text-decoration-color:var(--color-rule)}.site-footer[data-astro-cid-gcn2mc3v] a[data-astro-cid-gcn2mc3v]:hover{color:var(--color-text)}.skip-link[data-astro-cid-37fxchfa]{position:absolute;top:-100px;left:var(--space-4);background:var(--color-text);color:var(--color-bg);padding:var(--space-2) var(--space-4);text-decoration:none;border-radius:4px;z-index:100}.skip-link[data-astro-cid-37fxchfa]:focus{top:var(--space-4)}.site-main[data-astro-cid-37fxchfa]{padding-top:clamp(1.5rem,.75rem + 2vw,3rem)}
