:root{--ground:#d9dad3;--ink:#3b3e39;--ink-soft:#666a63;--paper:#efede4;--paper-soft:#cfcdc4}*{box-sizing:border-box}html{background:var(--ground)}@media (hover:hover){html,body,a,button{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22'><circle cx='11' cy='11' r='6.5' fill='none' stroke='%23efede4' stroke-width='3.4' opacity='.85'/><circle cx='11' cy='11' r='6.5' fill='none' stroke='%23333632' stroke-width='1.5'/><circle cx='11' cy='11' r='1.3' fill='%23333632'/></svg>") 11 11,auto}}body{color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:EB Garamond,Iowan Old Style,Georgia,serif;font-size:16.5px;line-height:1.5;overflow-x:hidden}#root{min-height:100svh;position:relative}#sky{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}#field{filter:url(#wash)blur(11px);position:absolute;inset:-12vh -12vw}.blob{will-change:transform;mix-blend-mode:multiply;position:absolute}.blob.light{mix-blend-mode:screen;opacity:.9;background:radial-gradient(closest-side,#f1efe6,#f1efe600);border-radius:63% 37% 54% 46%/55% 48% 52% 45%}@keyframes d1{0%{transform:translate(0)scale(1)}to{transform:translate(6vw,4vh)scale(1.08)}}@keyframes d2{0%{transform:translate(0)scale(1.05)}to{transform:translate(-5vw,-6vh)scale(.96)}}@keyframes d3{0%{transform:translate(0)scale(.95)}to{transform:translate(-8vw,3vh)scale(1.1)}}@keyframes d4{0%{transform:rotate(-14deg)translate(0)scale(1)}to{transform:rotate(-9deg)translate(9vw,7vh)scale(.92)}}#light{z-index:1;pointer-events:none;background:linear-gradient(#ffffff29 0%,#fff0 40%,#4548431a 100%);position:fixed;inset:0}#grain{z-index:1;pointer-events:none;opacity:.9;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.24 0 0 0 0 0.25 0 0 0 0 0.22 0 0 0 0.34 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}#ink{z-index:2;pointer-events:none;width:100%;transition:opacity 1.8s;position:absolute;top:0;left:0}#ink.clearing{opacity:0}#tray{z-index:4;max-width:calc(100vw - 2.8rem);color:var(--ink);background:linear-gradient(180deg, color-mix(in srgb, var(--paper) 40%, var(--ground)) 0%, color-mix(in srgb, var(--ground) 92%, var(--ink)) 100%);border:1px solid color-mix(in srgb, var(--ink) 24%, transparent);letter-spacing:.06em;-webkit-user-select:none;user-select:none;border-radius:7px;flex-wrap:wrap;align-items:stretch;padding:.38rem;font-size:.82em;transition:border-color .5s;display:flex;position:fixed;bottom:1.2rem;right:1.4rem;box-shadow:inset 0 1px #ffffff73,0 1px 2px #282c281f,0 14px 24px -16px #282c288c}#tray.inked{border-color:color-mix(in srgb, var(--ink) 40%, transparent)}#tray .groove{background:color-mix(in srgb, var(--ink) 9%, transparent);border-radius:4px;align-items:center;gap:.7em;height:2.1em;padding:0 .75em;display:flex;box-shadow:inset 0 1.5px 3px #282c2847,inset 0 -1px #ffffff59}#tray .pen{width:auto;height:.75em;display:block;overflow:visible}#tray .pen path{fill:var(--ink);stroke:none}#tray .pen path:nth-child(2){fill:color-mix(in srgb, var(--ink) 70%, var(--ground))}#tray .pen .cap{fill:color-mix(in srgb, var(--paper) 70%, var(--ink))}#tray .drop{background:var(--ink);opacity:.2;border-radius:50%;width:.55em;height:.55em;transition:opacity .7s,transform .7s cubic-bezier(.2,.8,.2,1);transform:scale(.8)}#tray.inked .drop{opacity:1;transform:scale(1)}#tray.wiping .drop{opacity:.1;transition:opacity .55s linear,transform .55s linear;transform:scale(.3)}#tray.off .pen{opacity:.35}#tray .hint{border-bottom:1px solid color-mix(in srgb, var(--ink) 12%, transparent);letter-spacing:.05em;width:0;min-width:100%;color:var(--ink);opacity:.6;flex:100%;margin:0 0 .4rem;padding:.15rem .3rem .4rem;font-size:.86em;line-height:1.75}#tray .hint .h{white-space:nowrap;margin-right:1em;display:inline-block}#tray .hint .h:last-child{margin-right:0}#tray .hint kbd{font:inherit;letter-spacing:.06em;border:1px solid color-mix(in srgb, var(--ink) 30%, transparent);background:color-mix(in srgb, var(--paper) 45%, transparent);vertical-align:.05em;border-bottom-width:2px;border-radius:4px;padding:.02em .42em .06em;font-size:.86em;line-height:1.25;display:inline-block}#tray .hint-esc,#tray .hint-shift,#tray.lifted .hint-down{display:none}#tray.lifted-esc .hint-esc,#tray.lifted-shift .hint-shift{display:inline}#tray .pen{transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .3s}#tray.lifted .pen{opacity:.5;transform:translateY(-3px)rotate(-6deg)}#tray .modes{border-left:1px solid color-mix(in srgb, var(--ink) 16%, transparent);align-items:center;gap:.15em;margin-left:.55rem;padding-left:.55rem;display:flex}#tray .modes button{cursor:inherit;color:inherit;font:inherit;letter-spacing:inherit;opacity:.42;background:0 0;border:0;border-radius:3px;margin:0;padding:.28em .5em;transition:opacity .3s,background-color .3s}#tray .modes button:hover{opacity:.8}#tray .modes button[aria-checked=true]{opacity:1;background:color-mix(in srgb, var(--ink) 10%, transparent);box-shadow:inset 0 1px 2px #282c282e}#tray .modes button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--ink) 15%, transparent);outline:none}#reset{cursor:inherit;border:0;border-left:1px solid color-mix(in srgb, var(--ink) 16%, transparent);color:inherit;font:inherit;letter-spacing:inherit;opacity:.38;background:0 0;margin:0 0 0 .4rem;padding:0 .55em 0 .75em;transition:opacity .4s}#reset:disabled{cursor:inherit}#tray.inked #reset{opacity:.85}#tray.inked #reset:hover,#tray.inked #reset:focus-visible{opacity:1;outline:none}#reset:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--ink) 15%, transparent);border-radius:3px}[data-ink-aware]{--lit:0;--text:color-mix(in oklab, var(--paper) calc(var(--lit) * 100%), var(--ink));--text-soft:color-mix(in oklab, var(--paper-soft) calc(var(--lit) * 100%), var(--ink-soft));color:var(--text);text-shadow:0 0 .6em color-mix(in oklab, color-mix(in oklab, var(--ink) calc(var(--lit) * 100%), var(--paper)) 55%, transparent);transition:color .45s,text-shadow .45s}@supports not (color:color-mix(in oklab, red, blue)){[data-ink-aware]{--text:var(--ink);--text-soft:var(--ink-soft)}}body[data-ink-mode=drag] #page{-webkit-user-select:none;user-select:none}@media (hover:none){body{touch-action:manipulation}body:not([data-ink-mode=off]) #page{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body[data-ink-mode=drag]{touch-action:none}body[data-ink-mode=drag] #tray{touch-action:manipulation}}#page{z-index:3;position:relative}.screen{min-height:100svh;position:relative}.block{max-width:30ch;position:absolute}.block.wide{max-width:40ch}.block p{margin:0 0 1.1em}.block p:last-child{margin-bottom:0}.bl{bottom:12vh;left:7vw}.br{bottom:12vh;right:7vw}.tr{top:14vh;right:7vw}.tl{top:14vh;left:7vw}.ml{top:50%;left:7vw;transform:translateY(-50%)}.mr{top:50%;right:7vw;transform:translateY(-50%)}.name,.studio,.heading{letter-spacing:.04em;margin:0 0 1.6em;font-size:1em;font-weight:500}.place{color:var(--text-soft,var(--ink-soft))}.obs{max-width:26ch;margin:0;font-style:italic;position:absolute}.o1{top:18vh;left:8vw}.o2{top:46vh;right:10vw}.o3{bottom:14vh;left:22vw}.quiet{font-size:.9em}.quiet,.quiet p{color:var(--text-soft,var(--ink-soft))}.quiet .date{color:var(--text,var(--ink));margin-bottom:1em}a{color:inherit;border-bottom:1px solid color-mix(in srgb, currentColor 30%, transparent);text-decoration:none;transition:border-color .2s}a:hover,a:focus-visible{border-bottom-color:currentColor;outline:none}a:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, currentColor 15%, transparent)}.links a{margin-right:1.2em}.posts{margin:0;padding:0;list-style:none}.posts li{margin:0 0 1.4em}.posts li:last-child{margin-bottom:0}.posts .when{color:var(--text-soft,var(--ink-soft));margin-bottom:.15em;font-size:.86em;display:block}.posts .title{font-size:1.08em}.posts .summary{color:var(--text-soft,var(--ink-soft));margin:.25em 0 0}.posts .draft{letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft,var(--ink-soft));margin-left:.6em;font-size:.78em}.post{max-width:62ch;margin:0 auto;padding:14vh 7vw 18vh;position:relative}.post .crumb{letter-spacing:.04em;margin-bottom:4em;font-size:.9em;display:inline-block}.post h1{letter-spacing:.02em;margin:0 0 .35em;font-size:1.9em;font-weight:500;line-height:1.2}.post .meta{margin:0 0 3em;font-size:.9em}.post .body{font-size:1.08em;line-height:1.6}.post .body>*{margin:0 0 1.2em}.post .body h2,.post .body h3{letter-spacing:.03em;margin-top:2.2em;font-weight:500;line-height:1.25}.post .body h2{font-size:1.25em}.post .body h3{font-size:1.05em;font-style:italic}.post .body blockquote{border-left:1px solid color-mix(in srgb, currentColor 35%, transparent);margin:0 0 1.2em;padding-left:1.2em;font-style:italic}.post .body ul,.post .body ol{padding-left:1.4em}.post .body li{margin-bottom:.4em}.post .body code{background:color-mix(in srgb, currentColor 9%, transparent);border-radius:3px;padding:.1em .35em;font-family:SF Mono,Menlo,Consolas,monospace;font-size:.82em}.post .body pre{background:color-mix(in srgb, currentColor 8%, transparent);border-radius:4px;padding:1em 1.2em;overflow-x:auto}.post .body pre code{background:0 0;padding:0}.post .body img{max-width:100%;height:auto;display:block}.post .body hr{border:0;border-top:1px solid color-mix(in srgb, currentColor 30%, transparent);margin:2.5em 0}.post .body strong{font-weight:500}.post .foot{margin-top:5em;font-size:.9em}.missing{max-width:40ch;padding:30vh 7vw}@media (width<=700px){body{font-size:16px}.screen{flex-direction:column;justify-content:flex-end;min-height:100svh;padding:14vh 9vw 16vh;display:flex}.block,.obs{max-width:34ch;margin:0 0 3.2em;position:static;transform:none}.block:last-child,.obs:last-child{margin-bottom:0}.screen:first-child{justify-content:flex-end}.obs{margin-bottom:2.6em}#field{filter:url(#wash)blur(7px)}#tray{padding:.3rem;font-size:.78em;bottom:.9rem;right:.9rem}#tray .groove{justify-content:center;min-width:2.2em;padding:0 .6em}#tray .pen{display:none}#tray .modes{gap:0;margin-left:.35rem;padding-left:.35rem}#tray .modes button{padding:.28em .42em}#reset{margin-left:.25rem;padding:0 .4em 0 .6em}.post{padding:10vh 9vw 16vh}.post .crumb{margin-bottom:3em}}@media (prefers-reduced-motion:reduce){.blob{animation:none!important}}
