:root{--font-sans: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--text-xs: .8125rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: clamp(2.25rem, 5vw, 3rem);--text-6xl: clamp(2.5rem, 6vw, 3.75rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--width-prose: 45rem;--width-content: 56rem;--width-wide: 72rem;--header-height: 4rem;--gutter: clamp(1rem, 4vw, 2rem);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 12px;--transition-fast: .12s ease;--transition: .18s ease}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #09090b;--bg-elevated: #18181b;--bg-subtle: #1c1c20;--bg-code: #18181b;--text: #fafafa;--text-muted: #a1a1aa;--text-subtle: #71717a;--border: #27272a;--border-strong: #3f3f46;--link: #fafafa;--accent: #fb923c;--header-bg: rgba(9, 9, 11, .72)}:root[data-theme=light]{color-scheme:light;--bg: #ffffff;--bg-elevated: #fafafa;--bg-subtle: #f4f4f5;--bg-code: #f4f4f5;--text: #18181b;--text-muted: #52525b;--text-subtle: #a1a1aa;--border: #e4e4e7;--border-strong: #d4d4d8;--link: #18181b;--accent: #c2410c;--header-bg: rgba(255, 255, 255, .78)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--bg);color:var(--text);font-size:var(--text-base);line-height:1.65;min-height:100vh;display:flex;flex-direction:column;overflow-x:clip;transition:background var(--transition),color var(--transition)}.container{width:100%;max-width:var(--width-wide);margin-inline:auto;padding-inline:var(--gutter)}.container--content{max-width:var(--width-content)}.container--prose{max-width:var(--width-prose)}main{flex:1;padding-block:var(--space-16) var(--space-20)}@media(max-width:640px){main{padding-block:var(--space-10) var(--space-16)}}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-4);color:var(--text);line-height:1.15;font-weight:700;letter-spacing:-.02em}h1{font-size:var(--text-6xl);letter-spacing:-.035em}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{margin:0 0 var(--space-4)}a{color:var(--link);text-decoration:underline;text-decoration-color:var(--border-strong);text-decoration-thickness:1px;text-underline-offset:.22em;transition:text-decoration-color var(--transition-fast)}a:hover{text-decoration-color:var(--text)}strong,b{font-weight:700}small{font-size:var(--text-sm);color:var(--text-muted)}.prose{font-size:calc(1rem * var(--prose-scale, 1))}.prose>*+*{margin-top:var(--space-6)}.prose p{font-size:1em}.prose h2{font-size:1.875em;margin-top:var(--space-10);margin-bottom:var(--space-3)}.prose h3{font-size:1.5em;margin-top:var(--space-10);margin-bottom:var(--space-3)}.prose h4{font-size:1.25em;margin-top:var(--space-10);margin-bottom:var(--space-3)}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:var(--space-4)}.prose ul,.prose ol{padding-left:1.4em;font-size:1em}.prose li+li{margin-top:var(--space-2)}.prose blockquote{font-size:1em}.prose img{display:block;margin-inline:auto}.prose pre{font-size:.875em}.prose code{font-size:.88em}:root[data-font-size=s]{--prose-scale: .92}:root[data-font-size=m]{--prose-scale: 1}:root[data-font-size=l]{--prose-scale: 1.125}:root[data-font-size=xl]{--prose-scale: 1.25}code{font-family:var(--font-mono);font-size:.88em;padding:.15em .4em;background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius-sm)}pre{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.55;padding:var(--space-5);background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}pre>code{all:unset;font-family:inherit}blockquote{margin:0;padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:2px solid var(--border-strong);color:var(--text-muted);font-style:italic}hr{border:0;border-top:1px solid var(--border);margin-block:var(--space-12)}table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}th,td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);text-align:left}th{font-weight:600;color:var(--text);background:var(--bg-subtle)}img,video{max-width:100%;height:auto;border-radius:var(--radius-md)}textarea,input{font-family:inherit;font-size:var(--text-base)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--text-muted)}.text-subtle{color:var(--text-subtle)}.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}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border);padding-block:var(--space-8);margin-top:var(--space-16)}.footer-row[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.copyright[data-astro-cid-sz7xmlte]{margin:0;font-size:var(--text-sm);color:var(--text-muted)}.socials[data-astro-cid-sz7xmlte]{display:flex;gap:var(--space-5);margin:0;padding:0;list-style:none}.socials[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:var(--text);text-decoration:none;transition:color var(--transition-fast)}.socials[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.nav-link[data-astro-cid-eimmu3lg]{display:inline-block;font-size:var(--text-sm);font-weight:500;color:var(--text-muted);text-decoration:none;padding:var(--space-2) 0;transition:color var(--transition-fast)}.nav-link[data-astro-cid-eimmu3lg]:hover,.nav-link[data-astro-cid-eimmu3lg].active{color:var(--text)}.scroll-top[data-astro-cid-73562bqz]{position:fixed;right:var(--space-5);bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0));z-index:30;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:999px;cursor:pointer;box-shadow:0 4px 12px #00000014;transition:background var(--transition-fast),border-color var(--transition-fast)}.scroll-top[data-astro-cid-73562bqz][hidden]{display:none}.scroll-top[data-astro-cid-73562bqz]:hover{background:var(--bg-elevated);border-color:var(--border-strong)}@media(max-width:480px){.scroll-top[data-astro-cid-73562bqz]{right:var(--space-4);bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0))}}.search-modal[data-astro-cid-qk3db3zz]{width:min(640px,92vw);max-height:80dvh;margin:10vh auto auto;padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);box-shadow:0 20px 60px #0000002e}@media(max-width:480px){.search-modal[data-astro-cid-qk3db3zz]{width:96vw;max-height:86dvh;margin:6vh auto auto}}.search-modal[data-astro-cid-qk3db3zz]::backdrop{background:#00000080;backdrop-filter:blur(2px)}.search-modal-inner[data-astro-cid-qk3db3zz]{display:flex;flex-direction:column;max-height:80dvh;overflow:hidden}@media(max-width:480px){.search-modal-inner[data-astro-cid-qk3db3zz]{max-height:86dvh}}.search-modal-head[data-astro-cid-qk3db3zz]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.search-hint[data-astro-cid-qk3db3zz]{margin:0;font-size:var(--text-xs);color:var(--text-subtle)}.search-hint[data-astro-cid-qk3db3zz] kbd[data-astro-cid-qk3db3zz]{display:inline-block;padding:1px 6px;font-family:var(--font-mono);font-size:11px;color:var(--text);background:var(--bg-subtle);border:1px solid var(--border);border-radius:3px}.hint-mobile[data-astro-cid-qk3db3zz]{display:none}@media(max-width:480px){.hint-desktop[data-astro-cid-qk3db3zz]{display:none}.hint-mobile[data-astro-cid-qk3db3zz]{display:inline;font-weight:600;color:var(--text)}}.search-modal-close[data-astro-cid-qk3db3zz]{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:0;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.search-modal-close[data-astro-cid-qk3db3zz]:hover{color:var(--text);background:var(--bg-subtle)}#search-results[data-astro-cid-qk3db3zz]{flex:1 1 auto;min-height:200px;overflow-y:auto;padding:var(--space-5) var(--space-4) var(--space-4);--pagefind-ui-scale: .95;--pagefind-ui-primary: var(--text);--pagefind-ui-text: var(--text);--pagefind-ui-background: var(--bg-elevated);--pagefind-ui-border: var(--border);--pagefind-ui-tag: var(--bg-subtle);--pagefind-ui-border-width: 1px;--pagefind-ui-border-radius: var(--radius-md);--pagefind-ui-font: var(--font-sans)}.search-loading[data-astro-cid-qk3db3zz]{margin:0;font-size:var(--text-sm);color:var(--text-muted)}#search-results .pagefind-ui__form{position:relative}#search-results .pagefind-ui__search-input{background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 44px 14px 48px;font-size:16px;line-height:1.4;width:100%;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}#search-results .pagefind-ui__search-input::placeholder{color:var(--text-subtle)}#search-results .pagefind-ui__search-input:focus,#search-results .pagefind-ui__search-input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}#search-results .pagefind-ui__search-clear{color:var(--text-muted);font-size:var(--text-xs)}#search-results .pagefind-ui__results{margin-top:var(--space-4)}#search-results .pagefind-ui__result{padding-block:var(--space-3);border-top:1px solid var(--border)}#search-results .pagefind-ui__result:first-child{border-top:0}#search-results .pagefind-ui__result-link{color:var(--text);font-weight:600;text-decoration:none}#search-results .pagefind-ui__result-link:hover{color:var(--accent)}#search-results .pagefind-ui__result-excerpt{color:var(--text-muted);font-size:var(--text-sm)}#search-results .pagefind-ui__message{color:var(--text-muted);font-size:var(--text-sm);margin-top:var(--space-3)}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;background:var(--header-bg);backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--border)}.nav-row[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);height:var(--header-height)}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:baseline;gap:4px;font-weight:700;font-size:var(--text-base);letter-spacing:-.015em;color:var(--text);text-decoration:none;margin-right:auto}.brand[data-astro-cid-3ef6ksr2]:after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);transform:translateY(-1px)}.brand[data-astro-cid-3ef6ksr2]:hover{color:var(--text)}nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-6)}.theme-toggle[data-astro-cid-3ef6ksr2],.search-trigger[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.theme-toggle[data-astro-cid-3ef6ksr2]:hover,.search-trigger[data-astro-cid-3ef6ksr2]:hover{border-color:var(--border-strong);background:var(--bg-subtle)}.icon[data-astro-cid-3ef6ksr2],.icon-sun[data-astro-cid-3ef6ksr2]{display:block}.icon-moon[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=light] .icon-sun[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=light] .icon-moon[data-astro-cid-3ef6ksr2]{display:block}@media(max-width:480px){.nav-row[data-astro-cid-3ef6ksr2]{gap:var(--space-3)}nav[data-astro-cid-3ef6ksr2]{gap:var(--space-4)}}
