:root,[data-theme=light]{color-scheme:light;--paper:#faf6ef;--paper-deep:#f3ecdf;--desk:#e7ddcb;--card:#fffdf8;--ink:#2b2a28;--ink-soft:#4a463f;--pencil:#7a746b;--pencil-text:#655f56;--terracotta:#c0583a;--terracotta-text:#a3462b;--terracotta-fill:#a3462b;--on-terracotta:#fff;--sage:#7c9a7e;--sage-text:#4e6b51;--sage-rule:rgba(124,154,126,.22);--sage-rule-strong:rgba(124,154,126,.55);--rule-line:rgba(124,154,126,.13);--hl-terra:rgba(192,88,58,.24);--hl-terra-strong:rgba(192,88,58,.45);--hl-sage:rgba(124,154,126,.36);--tape:hsla(43,44%,71%,.62);--tape-edge:rgba(160,140,95,.18);--shadow-hard:#2b2a28;--shadow-soft:rgba(43,42,40,.12);--grain:rgba(43,42,40,.035);--hole:#e7ddcb;--hole-ring:rgba(43,42,40,.14);--code-bg:#fffdf8;--code-comment:#655f56;--code-keyword:#a3462b;--code-string:#4e6b51;--code-number:#8a5a12;--code-fn:#3e5c7a;--code-var:#7a3e62}[data-theme=dark]{color-scheme:dark;--paper:#22201c;--paper-deep:#1b1916;--desk:#121110;--card:#2a2723;--ink:#ece5d8;--ink-soft:#d3cbbd;--pencil:#9a9184;--pencil-text:#b3aa9c;--terracotta:#e07a5b;--terracotta-text:#ee9274;--terracotta-fill:#e07a5b;--on-terracotta:#1b1916;--sage:#9db89f;--sage-text:#a9c3ab;--sage-rule:rgba(157,184,159,.18);--sage-rule-strong:rgba(157,184,159,.42);--rule-line:rgba(157,184,159,.07);--hl-terra:rgba(224,122,91,.3);--hl-terra-strong:rgba(224,122,91,.45);--hl-sage:rgba(157,184,159,.26);--tape:hsla(44,35%,67%,.26);--tape-edge:rgba(0,0,0,.25);--shadow-hard:#0b0a09;--shadow-soft:rgba(0,0,0,.35);--grain:hsla(0,0%,100%,.022);--hole:#121110;--hole-ring:rgba(0,0,0,.5);--code-bg:#1e1c19;--code-comment:#b3aa9c;--code-keyword:#ee9274;--code-string:#a9c3ab;--code-number:#e3b872;--code-fn:#9ec0e0;--code-var:#d9a3c6}:root{--font-serif:"Source Serif 4",Charter,"Bitstream Charter",Georgia,serif;--font-hand:"Bradley Hand","Segoe Print","Chalkboard SE",cursive;--font-mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1.0625rem;--font-size-lg:1.1875rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--font-size-3xl:2.25rem;--font-size-4xl:clamp(2.4rem,5.2vw,3.5rem);--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--space-10:4rem;--space-12:6rem;--fn-line:2rem;--fn-gutter:5.5rem;--fn-main:42rem;--fn-note-w:13rem;--fn-note-gap:3.5rem;--fn-sheet-max:72rem;--radius-sm:3px;--radius-md:6px;--transition-fast:140ms ease;--transition-base:220ms ease;--color-bg:var(--paper);--color-bg-elevated:var(--card);--color-bg-subtle:var(--paper-deep);--color-surface:var(--paper-deep);--color-text-primary:var(--ink);--color-text-secondary:var(--ink-soft);--color-text-muted:var(--pencil-text);--color-text-heading:var(--ink);--color-accent:var(--terracotta-text);--color-link:var(--ink);--color-link-hover:var(--terracotta-text);--color-border:var(--sage-rule);--color-border-strong:var(--sage-rule-strong);--color-code-bg:var(--paper-deep);--border-radius-sm:var(--radius-sm);--border-radius-md:var(--radius-md);--border-radius-lg:var(--radius-md);--max-width-content:var(--fn-main)}*,:after,:before{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;scroll-padding-top:5rem}body,html{margin:0;padding:0;background-color:var(--desk);color:var(--ink);font-family:var(--font-serif);font-size:var(--font-size-base);line-height:1.7;font-weight:400;font-optical-sizing:auto}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);color:var(--ink);font-weight:600;line-height:1.2;letter-spacing:-.01em;text-wrap:balance}p{text-wrap:pretty}a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--terracotta);text-decoration-color:var(--terracotta);text-decoration-thickness:1.5px;text-underline-offset:3px;transition:color var(--transition-fast),background-size var(--transition-base)}a:hover{color:var(--terracotta-text)}img{max-width:100%;height:auto;display:block}b,strong{font-weight:700}hr{border:0;border-top:2px dashed var(--sage-rule-strong);margin:var(--space-8) 0}::selection{background:var(--hl-terra);color:var(--ink)}:focus-visible{outline:2px solid var(--terracotta-text);outline-offset:3px;border-radius:2px}button{font-family:inherit}.fn-skip{position:absolute;left:var(--space-4);top:-4rem;z-index:200;background:var(--card);color:var(--ink);border:2px solid var(--ink);padding:var(--space-2) var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-sm);box-shadow:3px 3px 0 var(--shadow-hard)}.fn-skip:focus{top:var(--space-4)}.fn-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.fn-desk{min-height:100vh;padding:var(--space-6) var(--space-4) var(--space-8)}.fn-sheet{position:relative;max-width:var(--fn-sheet-max);margin:0 auto;padding-left:var(--fn-gutter);padding-right:var(--space-6);background-color:var(--paper);background-image:radial-gradient(var(--grain) 1px,transparent 1.3px),radial-gradient(var(--grain) 1px,transparent 1.3px),repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--fn-line) - 1px),var(--rule-line) calc(var(--fn-line) - 1px),var(--rule-line) var(--fn-line));background-size:7px 7px,13px 13px,auto;background-position:0 0,4px 6px,0 0;box-shadow:0 1px 0 var(--shadow-soft),0 24px 48px -28px var(--shadow-soft),0 2px 6px -2px var(--shadow-soft);border-radius:2px}.fn-sheet:before{content:"";position:absolute;top:0;bottom:0;left:1.6rem;width:1.25rem;background-image:radial-gradient(circle at 50% 50%,var(--hole) 0 .45rem,var(--hole-ring) .5rem .56rem,transparent .6rem);background-size:1.25rem 8rem;background-repeat:repeat-y;background-position:center 2.75rem;pointer-events:none}.fn-body{padding:var(--space-8) 0 var(--space-6)}.fn-column{position:relative;max-width:calc(var(--fn-main) + var(--fn-note-w) + var(--fn-note-gap))}.fn-column:after{content:"";position:absolute;top:calc(-1 * var(--space-8));bottom:calc(-1 * var(--space-6));width:2px;background:var(--sage-rule-strong);pointer-events:none;display:none}@media (min-width:900px){.fn-column{margin-right:calc(var(--fn-note-w) + var(--fn-note-gap));max-width:var(--fn-main)}.fn-column:after{display:block;right:calc(-1 * var(--fn-note-gap) / 2)}.fn-wide{position:relative;z-index:1;clear:both;margin-right:calc(-1 * (var(--fn-note-w) + var(--fn-note-gap)))}}.fn-note{font-family:var(--font-hand);font-size:1.05rem;line-height:1.4;color:var(--terracotta-text);margin:var(--space-3) 0 var(--space-4);padding:var(--space-1) 0 var(--space-1) var(--space-4);border-left:2px dashed var(--terracotta);transform:rotate(-.6deg);transform-origin:left top}.fn-note p{margin:0}.fn-note a{color:inherit;-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}@media (min-width:900px){.fn-note{float:right;clear:right;position:relative;width:var(--fn-note-w);margin:.2rem calc(-1 * (var(--fn-note-w) + var(--fn-note-gap))) var(--space-4) 0;padding:0;border-left:0;transform:rotate(-1.8deg)}.fn-note:nth-of-type(2n){transform:rotate(1.4deg)}.fn-note:before{content:"";position:absolute;top:.75em;right:calc(100% + .4rem);width:calc(var(--fn-note-gap) - .9rem);height:2px;background-image:linear-gradient(90deg,var(--terracotta) 55%,transparent 55%);background-size:7px 2px;background-repeat:repeat-x}.fn-note:after{content:"";position:absolute;top:calc(.75em - 3px);right:calc(100% + var(--fn-note-gap) - .6rem);width:8px;height:8px;border-radius:50%;background:var(--terracotta)}}.fn-hand{font-family:var(--font-hand)}.fn-mono{font-family:var(--font-mono)}.fn-datestamp{display:inline-flex;align-items:center;gap:var(--space-2);letter-spacing:.1em;color:var(--pencil-text);padding:.3rem .6rem;border:1px dashed var(--sage-rule-strong);border-radius:var(--radius-sm);background:var(--paper)}.fn-datestamp,.fn-kicker{font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase}.fn-kicker{display:block;font-weight:600;letter-spacing:.16em;color:var(--terracotta-text);margin:var(--space-5) 0 var(--space-2)}.fn-headline{font-size:var(--font-size-4xl);line-height:1.05;letter-spacing:-.02em;margin:0 0 var(--space-4)}.fn-lede{font-size:var(--font-size-lg);color:var(--ink-soft);line-height:1.65;margin:0 0 var(--space-5)}.fn-hl-sage,.fn-hl-terra{color:inherit;background-repeat:no-repeat;background-size:100% .62em;background-position:0 88%;padding:0 .12em;margin:0 -.12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.fn-hl-sage{background-image:linear-gradient(100deg,transparent .5%,var(--hl-sage) 2.5%,var(--hl-sage) 96%,transparent 99%)}.fn-hl-terra{background-image:linear-gradient(100deg,transparent .5%,var(--hl-terra) 2.5%,var(--hl-terra) 96%,transparent 99%)}.fn-section-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2) var(--space-3);margin:var(--space-10) 0 var(--space-4)}.fn-section-head h2,.fn-section-head h3{font-size:var(--font-size-2xl);margin:0}.fn-section-head:after{content:"";flex:1 1 4rem;border-top:2px dashed var(--sage-rule-strong);transform:translateY(-.3em)}.fn-label{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--pencil-text)}.fn-pill{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-serif);font-size:1rem;font-weight:600;line-height:1;padding:.75rem 1.25rem;border:2px solid var(--ink);border-radius:999px;background:var(--card);color:var(--ink);text-decoration:none;box-shadow:3px 3px 0 var(--shadow-hard);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.fn-pill:hover{color:var(--ink);transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--shadow-hard)}.fn-pill:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--shadow-hard)}.fn-pill--terra{background:var(--terracotta-fill)}.fn-pill--terra,.fn-pill--terra:hover{color:var(--on-terracotta)}.fn-pill--round{width:2.75rem;height:2.75rem;padding:0}.fn-pill svg{flex-shrink:0}.fn-tag{display:inline-block;font-family:var(--font-mono);font-size:.72rem;font-weight:500;line-height:1.2;letter-spacing:.03em;color:var(--pencil-text);background:var(--paper-deep);border:1px solid var(--sage-rule-strong);border-radius:var(--radius-sm);padding:.22rem .5rem;white-space:nowrap}.fn-tag--terra{color:var(--terracotta-text);border-color:var(--terracotta);background:transparent}.fn-tag--sage{color:var(--sage-text);border-color:var(--sage);background:transparent}.fn-year{display:flex;align-items:baseline;gap:var(--space-4);margin:var(--space-8) 0 var(--space-2);font-weight:400}.fn-year:first-child{margin-top:var(--space-4)}.fn-year__num{font-family:var(--font-serif);font-style:italic;font-weight:600;font-size:clamp(2.25rem,5vw,3.25rem);line-height:1;color:var(--terracotta);letter-spacing:-.02em}.fn-year__rule{flex:1 1;border-top:2px dashed var(--sage-rule-strong);transform:translateY(-.35em)}.fn-year__count{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.06em;color:var(--pencil-text)}.fn-entries{list-style:none;margin:0;padding:0}.fn-entry{display:grid;grid-template-columns:4.25rem minmax(0,1fr) auto;grid-gap:var(--space-1) var(--space-4);gap:var(--space-1) var(--space-4);align-items:baseline;padding:var(--space-4) 0;border-bottom:1px dashed var(--sage-rule-strong)}.fn-entry__no{font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.04em;color:var(--pencil-text);white-space:nowrap}.fn-entry__title{font-size:var(--font-size-lg);font-weight:600;line-height:1.35;color:var(--ink);text-decoration:none;background-image:linear-gradient(100deg,transparent .5%,var(--hl-terra) 2.5%,var(--hl-terra) 97%,transparent 99%);background-repeat:no-repeat;background-size:0 .55em;background-position:0 90%}.fn-entry__title:focus-visible,.fn-entry__title:hover{color:var(--ink);background-size:100% .55em}.fn-entry__date{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--pencil-text);white-space:nowrap}.fn-entry__desc{grid-column:2/-1;margin:0;font-size:var(--font-size-sm);color:var(--ink-soft)}@media (max-width:640px){.fn-entry{grid-template-columns:3.25rem minmax(0,1fr)}.fn-entry__date{grid-column:2}}.fn-card{position:relative;background:var(--card);border:1px solid var(--sage-rule-strong);border-radius:2px;padding:var(--space-6) var(--space-5) var(--space-5);box-shadow:3px 4px 0 var(--shadow-soft);transition:transform var(--transition-base),box-shadow var(--transition-base)}.fn-taped:before{content:"";position:absolute;top:-.8rem;left:50%;width:6.5rem;height:1.55rem;margin-left:-3.25rem;background:var(--tape);border-left:1px dashed var(--tape-edge);border-right:1px dashed var(--tape-edge);transform:rotate(-3deg);pointer-events:none;z-index:2}.fn-tilt-l{transform:rotate(-.7deg)}.fn-tilt-r{transform:rotate(.6deg)}.fn-card--link,a.fn-card{color:inherit;text-decoration:none}.fn-card--link:hover,a.fn-card:hover{color:inherit;transform:rotate(0deg) translateY(-3px);box-shadow:5px 7px 0 var(--shadow-soft)}.fn-stamp{position:absolute;top:-.9rem;right:1rem;z-index:3;display:inline-block;font-family:var(--font-mono);font-size:.68rem;font-weight:700;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-text);background:var(--paper);border:2px solid var(--terracotta);border-radius:4px;padding:.45rem .6rem;box-shadow:inset 0 0 0 2px var(--paper),inset 0 0 0 3px var(--terracotta);transform:rotate(7deg)}.fn-circle{display:inline-grid;place-items:center;flex-shrink:0;width:2.6rem;height:2.6rem;border:2px solid var(--terracotta);border-radius:52% 46% 55% 45%/47% 55% 45% 53%;font-family:var(--font-serif);font-style:italic;font-weight:600;font-size:1.1rem;color:var(--terracotta-text);transform:rotate(-7deg)}.fn-bars{display:flex;align-items:flex-end;gap:4px;height:2.5rem;margin:0;padding:0;list-style:none;border-bottom:1.5px solid var(--pencil)}.fn-bars li{flex:1 1;min-width:10px;background:var(--terracotta);border-radius:1px 1px 0 0;opacity:.85}.fn-snippet{position:relative;margin:var(--space-6) 0;padding-top:1.6rem;background:var(--code-bg);border:1px solid var(--sage-rule-strong);border-radius:2px;box-shadow:3px 4px 0 var(--shadow-soft);transform:rotate(-.3deg)}.fn-snippet:nth-of-type(2n){transform:rotate(.25deg)}.fn-snippet:after,.fn-snippet:before{content:"";position:absolute;top:-.7rem;width:5.5rem;height:1.4rem;background:var(--tape);border-left:1px dashed var(--tape-edge);border-right:1px dashed var(--tape-edge);pointer-events:none}.fn-snippet:before{left:8%;transform:rotate(-4deg)}.fn-snippet:after{right:10%;transform:rotate(5deg)}.fn-snippet__label{position:absolute;top:.45rem;left:1.25rem;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--pencil-text)}.fn-snippet pre,.fn-snippet>div{margin:0!important}.fn-prose{font-size:var(--font-size-lg);line-height:1.75;color:var(--ink);overflow-wrap:break-word}.fn-prose :where(p){margin:1.1em 0 0}.fn-prose h1,.fn-prose h2,.fn-prose h3,.fn-prose h4{margin:2.2em 0 .6em}.fn-prose h1{font-size:var(--font-size-3xl)}.fn-prose h2{font-size:var(--font-size-2xl)}.fn-prose h3{font-size:var(--font-size-xl)}.fn-prose h4{font-size:var(--font-size-lg)}.fn-prose h2:before{content:"§";font-style:italic;color:var(--terracotta);margin-right:.4em;font-weight:400}.fn-prose :where(ul,ol){padding-left:1.5em}.fn-prose :where(li+li){margin-top:.35em}.fn-prose li::marker{color:var(--terracotta)}.fn-prose ol li::marker{font-family:var(--font-mono);font-size:.85em}.fn-prose :where(img){margin:var(--space-6) auto;background:var(--card);border:1px solid var(--sage-rule-strong);padding:.5rem;box-shadow:3px 4px 0 var(--shadow-soft)}.fn-prose pre:not([class*=language-]){position:relative;margin:var(--space-6) 0;padding:1.1rem 1.25rem;background:var(--code-bg);border:1px solid var(--sage-rule-strong);border-radius:2px;box-shadow:3px 4px 0 var(--shadow-soft);overflow-x:auto;font-size:.85rem;line-height:1.6}.fn-prose pre code:not([class*=language-]){background:none;border:0;padding:0;color:var(--ink);font-size:inherit}.fn-prose iframe,.fn-prose video{max-width:100%}blockquote{margin:var(--space-6) 0;padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:3px solid var(--sage);color:var(--ink-soft);font-style:italic}blockquote p:first-child{margin-top:0}code:not([class*=language-]){font-family:var(--font-mono);font-size:.86em;background:var(--paper-deep);color:var(--ink);padding:.12em .38em;border-radius:var(--radius-sm);border:1px solid var(--sage-rule)}table{width:100%;border-collapse:collapse;margin:var(--space-6) 0;font-size:var(--font-size-sm);display:block;overflow-x:auto}td,th{padding:var(--space-2) var(--space-3);border-bottom:1px dashed var(--sage-rule-strong);text-align:left;vertical-align:top}th{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--pencil-text);border-bottom:2px solid var(--ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--paper-deep)}::-webkit-scrollbar-thumb{background:var(--sage-rule-strong);border-radius:5px;border:2px solid var(--paper-deep)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.sage-coauthor-badge{align-items:center;gap:8px;background:var(--paper-deep);padding:6px 14px;border:1px dashed var(--terracotta);border-radius:999px;margin-bottom:24px}.sage-coauthor-badge,.sage-icon-wrapper{display:inline-flex;position:relative}.sage-icon-wrapper img{width:24px;height:24px;border-radius:50%;margin:0;padding:0;border:0;box-shadow:none}.sage-coauthor-text{color:var(--ink-soft);font-family:var(--font-mono);font-size:13px}.sage-coauthor-text a{color:var(--terracotta-text)}@media (max-width:899px){:root{--fn-gutter:3.5rem}.fn-sheet:before{left:1rem}}@media (max-width:640px){:root{--fn-gutter:var(--space-5);--font-size-base:1rem;--font-size-lg:1.0625rem}.fn-desk{padding:0}.fn-sheet{padding-right:var(--space-5);box-shadow:none}.fn-sheet:before{display:none}.fn-body{padding-top:var(--space-6)}.fn-prose{font-size:var(--font-size-base)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fn-card--link:hover,.fn-pill:active,.fn-pill:hover,a.fn-card:hover{transform:none}}