:root{color-scheme:light dark;--bg:light-dark(#f4ecd8,#1d1a17);--fg:light-dark(#4a3b2a,#e8e0d0);--muted:light-dark(#6b5d49,#a89a83);--rule:light-dark(#ded2b8,#38322b);--code-bg:light-dark(#ece2cc,#262119);--accent:light-dark(#1b6e3a,#86bf94);--astro-code-foreground:light-dark(#2a2119,#f0e6d2);--astro-code-background:light-dark(#ece2cc,#262119);--astro-code-token-keyword:light-dark(#2a2119,#f0e6d2);--astro-code-token-constant:light-dark(#4a3b2a,#d6c9b4);--astro-code-token-string:light-dark(#605341,#ab9f8a);--astro-code-token-string-expression:light-dark(#605341,#ab9f8a);--astro-code-token-comment:light-dark(#6c5f4d,#9d8e78);--astro-code-token-parameter:light-dark(#4a3b2a,#d6c9b4);--astro-code-token-function:light-dark(#2a2119,#f0e6d2);--astro-code-token-punctuation:light-dark(#665944,#a49680);--astro-code-token-link:light-dark(#4a3b2a,#e8e0d0);--font-serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-xs:.765rem;--text-base:1rem;--text-md:1.353rem;--text-lg:1.765rem;--text-xl:2.353rem;--space-1:4px;--space-2:8px;--space-3:16px;--space-4:24px;--space-5:32px;--space-6:48px;--space-7:64px;--measure:60ch}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:before,:after{box-sizing:border-box}html{font-size:125%;font-family:var(--font-serif);-webkit-text-size-adjust:100%;line-height:1.65}body{padding:var(--space-5) var(--space-3) var(--space-7);max-width:var(--measure);background:var(--bg);color:var(--fg);margin:0 auto}header{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.site-title,.meta,time,.toc,.theme-toggle,.apps,.copy{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em}.theme-toggle{font:inherit;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0}.theme-toggle[data-current=light] .t-light,.theme-toggle[data-current=dark] .t-dark{color:var(--accent)}.theme-toggle:hover{color:var(--fg)}.header-tools{align-items:baseline;gap:var(--space-4);display:flex}.apps{color:var(--muted);position:relative}.apps summary{cursor:pointer;list-style:none}.apps summary::-webkit-details-marker{display:none}.apps summary:after{content:" +"}.apps[open] summary:after{content:" -"}.apps summary:hover,.apps[open] summary{color:var(--fg)}.apps ul{top:calc(100% + var(--space-2));z-index:1;padding:var(--space-2) var(--space-3);background:var(--bg);border:1px solid var(--rule);min-width:16ch;margin:0;list-style:none;position:absolute;right:0}.apps li{margin:var(--space-1) 0}.apps a{color:var(--fg);text-decoration:none}.apps a:hover{color:var(--accent);text-decoration:underline}.apps-bars{display:none}@media (width<=480px){header{position:relative}.apps,.header-tools{position:static}.apps-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.apps-bars{background:linear-gradient(currentColor 0 2px,#0000 2px 5px,currentColor 5px 7px,#0000 7px 10px,currentColor 10px 12px);width:18px;height:12px;display:block}.apps summary{align-items:center;min-height:32px;display:flex}.apps summary:after,.apps[open] summary:after{content:none}.apps ul{min-width:0;left:0;right:0;top:calc(100% + var(--space-2));padding:var(--space-3);margin-top:0}.apps li{margin:0}.apps a{padding:var(--space-2) 0;display:block}}.site-title{font-weight:700;text-decoration:none}.site-title:before{content:"~/";color:var(--accent)}a{color:inherit;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.15em}a:hover{color:var(--accent);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:var(--space-1)}::selection{background:var(--accent);color:var(--bg)}h1,h2,h3,h4{margin:var(--space-4) 0 var(--space-2);font-weight:700}h1{font-size:var(--text-xl);letter-spacing:-.02em;margin:0 0 var(--space-3);line-height:1.05}h2{font-size:var(--text-lg);letter-spacing:-.01em;margin:var(--space-6) 0 var(--space-3);line-height:1.15}h3{font-size:var(--text-md);margin:var(--space-5) 0 var(--space-2);line-height:1.25}h4{font-size:var(--text-base);margin:var(--space-4) 0 var(--space-2);line-height:1.35}hr+h2{margin-top:var(--space-4)}.meta,.summary,time,.draft{color:var(--muted)}.meta{margin-top:calc(-1 * var(--space-2))}.draft{margin-left:var(--space-2)}.ai-disclaimer{border:1px solid var(--rule);padding:var(--space-2) var(--space-3);margin:var(--space-4) 0;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.02em;color:var(--muted)}.post-list{margin:0;padding:0;list-style:none}.post-list li{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:11ch 1fr;display:grid}.post-list .summary{margin:var(--space-1) 0 0}@media (width<=480px){.post-list li{gap:var(--space-1);grid-template-columns:1fr}}.prose img,.prose svg{max-width:100%;height:auto}hr{border:0;border-top:1px solid var(--rule);margin:var(--space-6) 0}blockquote{margin:var(--space-4) 0;padding-left:var(--space-4);border-left:2px solid var(--rule);color:var(--muted)}code,pre{font-family:var(--font-mono)}code{font-size:.9em}:not(pre)>code{background:var(--code-bg);padding:.1em .3em}pre{padding:var(--space-3) var(--space-4);border:1px solid var(--rule);line-height:1.5;overflow-x:auto;background:var(--code-bg)!important}.prose{overflow-wrap:anywhere}pre[data-language=plaintext],pre[data-language=plaintext] code{white-space:pre-wrap;overflow-wrap:anywhere}table{border-collapse:collapse;width:fit-content;max-width:100%;margin:var(--space-4) 0;display:block;overflow-x:auto}th,td{border:1px solid var(--rule);padding:var(--space-2) var(--space-3);text-align:left}th{font-weight:700}ul.contains-task-list{padding-left:0;list-style:none}.task-list-item input{accent-color:var(--accent);margin:0 var(--space-2) 0 0}.footnotes{margin-top:var(--space-7);font-size:var(--text-xs);color:var(--muted)}.back{margin-top:var(--space-6)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}h2,h3,h4{scroll-margin-top:var(--space-4)}main{position:relative}.toc ol{margin:0;padding:0;list-style:none}.toc ol ol{padding-left:var(--space-4);margin-bottom:var(--space-1)}.toc li{margin:var(--space-1) 0}.toc a{color:var(--muted);text-decoration:none}.toc>ol>li>a{color:var(--fg)}.toc a:hover{color:var(--accent);text-decoration:underline}.toc-title,.toc-inline summary{color:var(--muted);margin:0 0 var(--space-2)}.toc-title{text-transform:uppercase;letter-spacing:.1em}.toc-inline{border:1px solid var(--rule);padding:var(--space-2) var(--space-3);margin:var(--space-4) 0}.toc-inline summary{cursor:pointer;margin:0}.toc-inline[open] summary{margin-bottom:var(--space-2)}.toc-side{display:none}@media (width>=1360px){.toc-side{top:0;bottom:0;right:calc(100% + var(--space-6));width:240px;display:block;position:absolute}.toc-side .toc{top:var(--space-5);max-height:calc(100vh - var(--space-7));position:sticky;overflow-y:auto}.toc-inline{display:none}}.code-wrap{position:relative}.code-wrap pre{padding-top:var(--space-5)}.copy{top:var(--space-2);right:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--muted);background:var(--bg);border:1px solid var(--rule);padding:0 var(--space-2);cursor:pointer;position:absolute}.copy:hover{color:var(--accent);border-color:var(--accent)}
