.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}*,*:before,*:after{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin-block-end:0}ul[role=list],ol[role=list]{list-style:none}body{min-height:100vh;min-height:100dvh;line-height:1.5}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4{text-wrap:balance}a:not([class]){text-decoration-skip-ink:auto;color:currentColor}img,picture{max-width:100%;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}:root{--bg: #f5f0eb;--bg-elev: #ede5dc;--bg-code: #faf7f4;--ink-1: #1f1c1a;--ink-2: #5e5851;--ink-3: #6b6557;--ink-4: #c8c0b4;--accent: #9a6040;--accent-soft: rgba(154, 96, 64, .07);--success: #2d7a4f;--error: #c03030;--warning: #d97757;--radius-sm: 4px;--radius: 8px;--easing-standard: cubic-bezier(.44, 0, .56, 1);--easing-soft: cubic-bezier(.16, 1, .3, 1)}@media(prefers-color-scheme:dark){:root{--bg: #14110f;--bg-elev: #1f1c18;--bg-code: #1a1816;--ink-1: #f0e9dd;--ink-2: #aaa294;--ink-3: #92897b;--ink-4: #3a3530;--accent: #d4956b;--accent-soft: rgba(212, 149, 107, .09)}}html{background:var(--bg);color:var(--ink-1);font-family:var(--font-sans);font-weight:300;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100%}body{margin:0;background:var(--bg);transition:background .4s,color .4s}a{color:inherit}[hidden]{display:none!important}::selection{background:var(--accent-soft);color:var(--ink-1);text-shadow:none}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:none}::view-transition-new(root){animation:.42s cubic-bezier(.16,1,.3,1) both pt-slide-up-in}[data-back-nav]::view-transition-old(root){animation:.42s cubic-bezier(.16,1,.3,1) both pt-slide-down-out;z-index:1}[data-back-nav]::view-transition-new(root){animation:none}[data-fade-nav]::view-transition-old(root){animation:.35s ease both pt-fade-out;z-index:auto}[data-fade-nav]::view-transition-new(root){animation:.35s ease both pt-fade-in}}@keyframes pt-slide-up-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pt-slide-down-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes pt-fade-out{0%{opacity:1}to{opacity:0}}@keyframes pt-fade-in{0%{opacity:0}to{opacity:1}}[data-category].is-filtered-out{display:none!important}.article-progress{position:fixed;top:0;left:0;right:0;height:2px;background:transparent;z-index:60;pointer-events:none}.article-progress-bar{height:100%;width:0;background:var(--accent);transition:width 80ms linear}@media(prefers-reduced-motion:no-preference){.fade-in{opacity:0;animation:fade-in 1s ease both}.fade-up{opacity:0;animation:fade-up 1s ease both}.delay-1{animation-delay:60ms}.delay-2{animation-delay:.14s}.delay-3{animation-delay:.24s}.delay-5{animation-delay:.38s}.delay-7{animation-delay:.54s}:is([data-back-nav],[data-fade-nav],[data-card-nav]) :is(.fade-in,.fade-up){opacity:1;animation:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}}pre{border-radius:var(--radius);padding:1.25rem;overflow-x:auto;-webkit-overflow-scrolling:touch}code{font-family:var(--font-mono);font-feature-settings:"liga" 1,"calt" 1}.hover-dim:has(.hover-target:hover) .hover-target:not(:hover){opacity:.45}.hover-target{transition:opacity .4s var(--easing-standard)}.skip-link[data-astro-cid-37fxchfa]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link[data-astro-cid-37fxchfa]:focus{position:fixed;top:1rem;left:1rem;width:auto;height:auto;margin:0;padding:.5rem 1rem;overflow:visible;clip:auto;white-space:normal;background:var(--bg-elev);color:var(--ink-1);border-radius:var(--radius-sm);z-index:1000;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}
