:root{--blog-ink-blue: #1b2a6b;--blog-cream: #f2ead8;--blog-bone: #f6f0e2;--blog-ink: #23252c;--blog-marker: #ff7ab8;--blog-chip: #e9e0cb;--blog-font: "Courier New", Courier, monospace}.blog-body{margin:0;font-family:var(--blog-font)}.blog-body.blog-index{background:var(--blog-ink-blue);color:var(--blog-cream);min-height:100vh}.blog-top{padding:3rem 1.5rem 0;max-width:60rem;margin:0 auto}.blog-top h1{font-size:2rem;font-weight:700;letter-spacing:.35em;text-transform:lowercase;margin:0 0 .4rem}.blog-top .blog-sub{font-size:.95rem;max-width:38rem;margin:0}.blog-hl{background:var(--blog-marker);color:var(--blog-ink-blue);padding:0 .25em}.blog-graph{position:relative;max-width:60rem;height:520px;margin:1rem auto 0}.blog-graph svg.blog-edges{position:absolute;inset:0;width:100%;height:100%}.blog-graph svg.blog-edges path{stroke:var(--blog-cream);stroke-width:1;fill:none;opacity:.35}.blog-node{position:absolute;transform:translate(-50%,-50%);color:var(--blog-cream);text-decoration:none}.blog-node .sq{width:17px;height:17px;background:var(--blog-cream);display:block;margin:0 auto}.blog-node .lbl{display:block;margin-top:.45rem;font-size:.72rem;text-align:center;opacity:.85;white-space:nowrap}.blog-node.tag .sq{width:10px;height:10px;background:transparent;border:2px solid var(--blog-marker)}.blog-node.tag .lbl{color:var(--blog-marker);opacity:.9;font-size:.7rem}.blog-card{position:absolute;top:-12px;left:30px;width:230px;background:var(--blog-bone);color:var(--blog-ink);border:2px solid var(--blog-cream);padding:.7rem .8rem .8rem;z-index:10;display:none}.blog-node.flip .blog-card{left:auto;right:30px}.blog-node.below .blog-card{top:30px}.blog-node.post:hover .blog-card,.blog-node.post:focus-within .blog-card,.blog-node.post:focus .blog-card{display:block;animation:blog-scanload .5s steps(9,end) both}@keyframes blog-scanload{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0% 0)}}.blog-card .img{width:100%;height:90px;border:1px solid var(--blog-ink);margin-bottom:.55rem;object-fit:cover;filter:grayscale(1);animation:blog-scanload .45s steps(6,end) .35s both}.blog-card .t,.blog-card .d,.blog-card .tags{display:block}.blog-card .t{font-weight:700;font-size:.85rem;line-height:1.35;color:var(--blog-ink-blue);margin:0 0 .45rem}.blog-card .d{font-size:.7rem;opacity:.7;margin:0 0 .45rem}.blog-card .tags{font-size:.75rem;margin:0}.blog-card .tags span{background:var(--blog-marker);color:var(--blog-ink-blue);padding:0 .25em;margin-right:.35em;display:inline-block}.blog-foot{max-width:60rem;margin:0 auto;padding:1rem 1.5rem 3rem;font-size:.8rem}.blog-index .blog-foot a{color:var(--blog-cream)}.blog-foot-sep{opacity:.5;margin:0 .35em;user-select:none}.blog-body.blog-post{background:var(--blog-bone);color:var(--blog-ink);min-height:100vh}.blog-sheet{max-width:38rem;margin:0 auto;padding:3rem 1.5rem 5rem}.blog-crumb{font-size:.85rem;margin:0 0 2.5rem}.blog-crumb a{color:var(--blog-ink-blue);font-weight:700}.blog-meta{font-size:.8rem;letter-spacing:.15em;margin:0 0 .4rem}.blog-title{font-size:1.7rem;font-weight:700;color:var(--blog-ink-blue);line-height:1.25;margin:0 0 .5rem}.blog-squiggle{display:block;margin:.2rem 0 1.4rem}.blog-squiggle path{stroke:var(--blog-ink-blue);fill:none;stroke-width:2}.blog-endmark{margin:3rem 0 0;font-size:.85rem;letter-spacing:.3em;font-weight:700;color:var(--blog-ink-blue)}.blog-prose p{line-height:1.7;font-size:.95rem;margin:0 0 1.2rem}.blog-prose a{color:var(--blog-ink-blue);text-decoration:none;font-weight:700;border:2px solid var(--blog-ink-blue);padding:0 .3em;display:inline-block;transform:rotate(-.4deg)}.blog-prose a:hover{background:var(--blog-marker);border-color:var(--blog-marker)}.blog-prose h2{font-size:1.05rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--blog-ink-blue);margin:2.2rem 0 .9rem}.blog-prose h3{font-size:.95rem;font-weight:700;letter-spacing:.15em;color:var(--blog-ink-blue);margin:1.8rem 0 .7rem}.blog-note{background:var(--blog-cream);border:2px dashed var(--blog-ink-blue);padding:.7rem .9rem;margin:0 0 1.8rem;font-size:.78rem;line-height:1.6;color:var(--blog-ink);transform:rotate(-.3deg)}.blog-note p{margin:0}.blog-note p+p{margin-top:.6rem}.blog-prose .blog-note a{border:none;padding:0;transform:none;display:inline;text-decoration:underline;text-underline-offset:2px}.blog-prose .blog-note a:hover{background:var(--blog-marker);color:var(--blog-ink)}.blog-prose mark{background:var(--blog-marker);color:var(--blog-ink);padding:0 .25em;font-style:normal}.blog-prose em{font-style:italic}.blog-prose strong{font-weight:700;color:var(--blog-ink-blue)}.blog-prose pre{background:var(--blog-ink-blue);color:var(--blog-cream);font-family:var(--blog-font);font-size:.85rem;padding:1rem 1.2rem;margin:1.4rem 0;overflow-x:auto;transform:rotate(-.25deg);line-height:1.5}.blog-prose code{font-family:var(--blog-font)}.blog-prose p code,.blog-prose li code{background:var(--blog-chip);padding:.05em .3em}.blog-prose ul,.blog-prose ol{margin:0 0 1.2rem;padding-left:1.4rem;line-height:1.7;font-size:.95rem}.blog-prose blockquote{border-left:3px solid var(--blog-marker);margin:0 0 1.2rem;padding-left:1rem}.blog-prose img{max-width:100%;border:2px solid var(--blog-ink);filter:grayscale(1);transform:rotate(.4deg);display:block;margin:1.8rem 0}.blog-prose hr{border:none;border-top:2px dashed var(--blog-ink-blue);opacity:.4;margin:2rem 0}.blog-comments{margin-top:2.6rem;padding-top:1.4rem;border-top:2px dashed var(--blog-ink-blue)}.bc-title{font-size:1.05rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--blog-ink-blue);margin:0 0 1rem}.bc-status{font-size:.85rem;color:var(--blog-ink-blue);opacity:.85}.bc-comment{margin:1.1rem 0}.bc-thread{margin:.6rem 0 0 .4rem;padding-left:.9rem;border-left:3px solid var(--blog-marker)}.bc-head{margin:0;font-size:.85rem;display:flex;align-items:baseline;gap:.7em;flex-wrap:wrap}.bc-head b{color:var(--blog-ink-blue)}.bc-head span{font-size:.72rem;opacity:.55}.bc-replybtn{font-family:var(--blog-font);font-size:.72rem;color:var(--blog-ink-blue);background:none;border:none;padding:0 .2em;cursor:pointer}.bc-replybtn:hover{background:var(--blog-marker)}.bc-body{margin:.25rem 0 0;font-size:.95rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.bc-form{display:grid;gap:.6rem;margin-top:1.7rem;max-width:34rem}.bc-form input,.bc-form textarea{font-family:var(--blog-font);font-size:.9rem;color:var(--blog-ink);background:var(--blog-cream);border:2px solid var(--blog-ink);padding:.45rem .6rem;transform:rotate(-.2deg)}.bc-form textarea{transform:rotate(.15deg);resize:vertical}.bc-form input:focus,.bc-form textarea:focus{outline:none;border-color:var(--blog-ink-blue)}#bc-hp{position:absolute;left:-5000px;width:1px;height:1px}#bc-send{justify-self:start;font-family:var(--blog-font);font-size:.9rem;font-weight:700;color:var(--blog-ink-blue);background:none;border:2px solid var(--blog-ink-blue);padding:.3rem .9rem;transform:rotate(-.6deg);cursor:pointer}#bc-send:hover{background:var(--blog-marker);border-color:var(--blog-marker)}#bc-send:disabled{opacity:.5;cursor:wait}.bc-replying{margin:0;font-size:.8rem;color:var(--blog-ink-blue)}.bc-replying button{font-family:var(--blog-font);font-size:.75rem;background:var(--blog-marker);color:var(--blog-ink);border:none;padding:.05rem .4rem;margin-left:.5em;cursor:pointer}@media(prefers-reduced-motion:reduce){.blog-node.post:hover .blog-card,.blog-node.post:focus-within .blog-card,.blog-card .img{animation:none}}
