@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DM Mono;src:url(/fonts/dm-mono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/libre-baskerville-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/libre-baskerville-400i.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Libre Baskerville;src:url(/fonts/libre-baskerville-700.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f5f0e8;--surface:#faf6ef;--border:#d9d0c2;--ink:#3a2e2a;--ink-body:#5c4f48;--ink-muted:#7d7168;--ink-faint:#c4b9ac;--ink-secondary:#6b5f55;--shadow:rgba(58,46,42,0.08);--font-serif:"Libre Baskerville",Georgia,serif;--font-sans:"DM Sans",system-ui,sans-serif;--font-mono:"DM Mono","Courier New",monospace;--transition-theme:background-color 0.4s,color 0.4s,border-color 0.4s}[data-theme=dark]{--bg:#141414;--surface:#1e1e1e;--border:#2e2e2e;--ink:#eeeeee;--ink-body:#b0b0b0;--ink-muted:#737373;--ink-faint:#404040;--ink-secondary:#9a9a9a;--shadow:rgba(0,0,0,0.4)}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--ink-body);transition:var(--transition-theme);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-serif)}a,h1,h2,h3,h4{color:var(--ink)}a{text-decoration:none}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.skip-link{position:absolute;top:-100%;left:0;padding:.5rem 1rem;background:var(--ink);color:var(--bg);z-index:1000;font-family:var(--font-sans)}.skip-link:focus{top:0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.reveal.visible{opacity:1;transform:translateY(0)}.theme-toggle{position:fixed;top:1.5rem;right:1.5rem;z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:50%;width:2.5rem;height:2.5rem;font-size:1.2rem;cursor:pointer;color:var(--ink);transition:var(--transition-theme);display:flex;align-items:center;justify-content:center}.theme-toggle:hover{border-color:var(--ink-muted)}@media (max-width:768px){.theme-toggle{top:auto;bottom:1rem;right:1rem;box-shadow:0 2px 8px var(--shadow)}}.nav-sentinel{height:1px;width:100%}.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--bg);transition:var(--transition-theme)}.nav-sticky{position:-webkit-sticky;position:sticky;top:0;z-index:50}.nav-has-title{border-bottom:1px solid var(--border);box-shadow:0 1px 8px var(--shadow)}.nav-left{display:flex;align-items:center;gap:1rem}.nav-back{font-size:1.25rem;color:var(--ink);text-decoration:none;transition:opacity .2s;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.nav-back:hover{opacity:.7}@media (max-width:768px){.nav-back{font-size:1.5rem;min-width:44px;min-height:44px}}.nav-title{font-family:var(--font-serif);font-size:1.125rem;color:var(--ink);font-weight:700}.page-nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;min-height:56px;background:var(--bg);transition:var(--transition-theme)}.page-nav-filled{border-bottom:1px solid var(--border);box-shadow:0 1px 8px var(--shadow)}.page-nav-back{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;transition:opacity .2s}.page-nav-back svg{display:block}.page-nav-back:hover{opacity:.7}@media (max-width:768px){.page-nav{padding:0 1.25rem}.page-nav-back{margin-left:-10px}}.page-nav-actions{display:flex;align-items:center;gap:12px}.page-nav .theme-toggle{position:static;width:2rem;height:2rem;font-size:1rem;box-shadow:none}.page-scroll-title{font-family:var(--font-serif);font-size:2rem;color:var(--ink);font-weight:700;line-height:1.2;margin:0 0 1rem;padding-top:1.25rem;white-space:nowrap}.page-sticky-bar{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--surface);border-bottom:1px solid var(--border);transition:var(--transition-theme)}.page-sticky-row-1{display:flex;align-items:center;justify-content:space-between;padding:10px 2rem 6px}.page-sticky-left{display:flex;align-items:center;gap:10px}.page-sticky-right{display:flex;align-items:center;gap:12px}.page-back{font-size:1.25rem;color:var(--ink);text-decoration:none;transition:opacity .2s}.page-back:hover{opacity:.7}.page-sticky-title{font-family:var(--font-serif);font-size:1.125rem;font-weight:700;color:var(--ink);margin:0}.page-sticky-count{font-size:.75rem}.page-sticky-count,.page-sticky-subtitle{font-family:var(--font-mono);color:var(--ink-muted)}.page-sticky-subtitle{font-size:.5625rem;letter-spacing:.1em;text-transform:uppercase}.page-sticky-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;font-family:var(--font-sans);font-size:.75rem;font-weight:500;color:var(--ink);border:1px solid var(--border);border-radius:6px;text-decoration:none;transition:border-color .2s;white-space:nowrap}.page-sticky-btn:hover{border-color:var(--ink-muted)}.page-sticky-row-2{display:flex;align-items:center;gap:6px;padding:0 2rem 10px;overflow-x:auto}.page-anchor{padding:4px 12px;border:1px solid var(--border);border-radius:16px;font-family:var(--font-sans);font-size:.6875rem;color:var(--ink-muted);text-decoration:none;white-space:nowrap;transition:all .15s}.page-anchor:hover{border-color:var(--ink-muted);color:var(--ink-body)}.page-anchor.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.page-sticky-bar .theme-toggle,.page-sticky-right .theme-toggle{position:static;width:2rem;height:2rem;font-size:1rem}@media (max-width:768px){.page-sticky-row-1{padding:10px 1.5rem 6px}.page-sticky-row-2{padding:0 1.5rem 10px}}.footer{text-align:center;padding:2rem;border-top:1px solid var(--border);margin-top:4rem;transition:var(--transition-theme)}.footer-social{display:flex;justify-content:center;gap:1.5rem;margin-bottom:1rem}.footer-social a{color:var(--ink-muted);transition:color .2s;display:flex;align-items:center}.footer-social a:hover{color:var(--ink)}.footer-copy{color:var(--ink-muted);font-size:.8rem}@keyframes page-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}main{animation:page-fade-in .4s ease-out}.not-found{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.not-found-code{font-family:var(--font-mono);font-size:6rem;font-weight:700;color:var(--ink-faint);line-height:1;margin-bottom:1rem}.not-found-text{font-size:1.125rem;color:var(--ink-muted);margin-bottom:2rem}.not-found-link{font-size:.875rem;color:var(--ink);padding:.5rem 1.25rem;border:1px solid var(--border);border-radius:8px;transition:border-color .2s,box-shadow .2s}.not-found-link:hover{border-color:var(--ink-muted);box-shadow:0 2px 8px var(--shadow)}.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}