@font-face{font-family:Yeseva One;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/yeseva-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-600.woff2) format("woff2")}:root{--serif: "Yeseva One", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", "Menlo", "Consolas", monospace;--bg: #cbb78d;--ink: #191410;--muted: #5f5236;--accent: #8a2b12;--rule: #6b5b3a;--patina-edge: rgba(60, 40, 15, .76);--grain-opacity: .36;--grain-blend: multiply}:root[data-theme=dark]{--bg: #0a0806;--ink: #e7ddc5;--muted: #8f866c;--accent: #cf7a4e;--rule: #3a352a;--patina-edge: rgba(0, 0, 0, .78);--grain-opacity: .1;--grain-blend: screen}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--mono);font-size:16px;line-height:1.5;-webkit-text-size-adjust:100%}body{margin:0 auto;max-width:74ch;padding:2rem 1.25rem 4rem;background:var(--bg);color:var(--ink);transition:none}body:before,body:after{content:"";position:fixed;inset:0;z-index:100;pointer-events:none}body:before{background:radial-gradient(120% 120% at 50% 42%,transparent 30%,var(--patina-edge) 100%)}body:after{opacity:var(--grain-opacity);mix-blend-mode:var(--grain-blend);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:underline;text-underline-offset:2px}a:hover{color:var(--accent)}.rule{border:0;border-top:1px solid var(--rule);margin:1.25rem 0}.masthead .logo{display:inline-block;text-decoration:none;color:var(--ink)}.masthead .logo pre{margin:0;font-size:.72rem;line-height:1.1;white-space:pre;overflow-x:auto}.masthead-bar{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-top:.75rem}.tagline{color:var(--muted);font-size:.85rem}.cursor{display:inline-block;width:.5em;height:1em;vertical-align:-.12em;margin-left:.15em;background:var(--accent);animation:blink 1.15s steps(1) infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.cursor{animation:none}}.masthead-nav{display:flex;align-items:center;gap:.75rem;font-size:.85rem}#theme-toggle{font:inherit;font-size:1rem;line-height:1;background:none;border:1px solid var(--rule);color:var(--ink);padding:.1rem .4rem;cursor:pointer}#theme-toggle:hover{color:var(--accent);border-color:var(--accent)}.coming-soon{font-family:var(--serif);font-weight:400;font-size:1.6rem;line-height:1.1;color:var(--ink);margin:3rem 0}.index{list-style:none;margin:0;padding:0}.entry{display:flex;align-items:baseline;justify-content:space-between;gap:1.25rem;padding:.7rem 0;border-bottom:1px dashed var(--rule)}.entry-title{font-family:var(--serif);font-weight:400;font-size:1.5rem;line-height:1.15;text-decoration:none;color:var(--ink)}.entry-title:hover{color:var(--accent)}.entry-date{font-family:var(--mono);font-size:.78rem;color:var(--muted);white-space:nowrap;text-align:right}.entry-date .lbl{opacity:.65}article h1{font-family:var(--serif);font-weight:400;font-size:2.2rem;line-height:1.1;margin:0 0 .4rem}article .meta{font-family:var(--mono);color:var(--muted);font-size:.8rem;margin-bottom:1.75rem}article .meta .lbl{opacity:.65}.prose{line-height:1.7}.prose h2{font-family:var(--serif);font-weight:400;font-size:1.5rem;margin-top:2rem}.prose h3{font-family:var(--serif);font-weight:400;font-size:1.2rem;margin-top:1.5rem}.prose pre{border:1px solid var(--rule);padding:.75rem;overflow-x:auto;font-size:.85rem}.prose code{font-size:.9em}.prose :not(pre)>code{background:color-mix(in srgb,var(--ink) 8%,transparent);padding:.05em .3em}.prose blockquote{border-left:2px solid var(--muted);margin-left:0;padding-left:1rem;color:var(--muted)}.prose img{max-width:100%;height:auto}.prose hr{border:0;border-top:1px dashed var(--rule)}.colophon{font-family:var(--mono);font-size:.82rem;color:var(--muted)}.colophon a{color:inherit}
