@font-face{font-family:ia writer quattro;src:url(/fonts/ia-writer-quattro/iAWriterQuattroS-Regular.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:ia writer quattro;src:url(/fonts/ia-writer-quattro/iAWriterQuattroS-Italic.woff2)format("woff2");font-style:italic;font-weight:400;font-display:swap}@font-face{font-family:ia writer quattro;src:url(/fonts/ia-writer-quattro/iAWriterQuattroS-Bold.woff2)format("woff2");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:ia writer quattro;src:url(/fonts/ia-writer-quattro/iAWriterQuattroS-BoldItalic.woff2)format("woff2");font-style:italic;font-weight:700;font-display:swap}:root{--spacing-base:1.5em;--font-family-mono:"iA Writer Quattro", monospace;--font-size-base:1.0em;--font-size-small:0.9em;--font-size-code:0.95em;--spacing-xs:calc(var(--spacing-base) * 0.25);--spacing-sm:calc(var(--spacing-base) * 0.5);--spacing-md:var(--spacing-base);--spacing-lg:calc(var(--spacing-base) * 2);--bg-h:44;--bg-s:50%;--bg-l:95%;--color-bg-primary:hsl(var(--bg-h) var(--bg-s) var(--bg-l));--color-bg-secondary:hsl(var(--bg-h) var(--bg-s) calc(var(--bg-l) - 2%));--color-border:hsl(var(--bg-h) var(--bg-s) calc(var(--bg-l) - 6%));--color-selection-bg:hsl(var(--bg-h) var(--bg-s) calc(var(--bg-l) - 13%));--color-dot:hsl(var(--bg-h) var(--bg-s) 0% / 7%);--color-text-primary:hsl(
    var(--bg-h) var(--bg-s) clamp(8%, calc(100% - var(--bg-l)), 92%)
  );--color-text-muted:hsl(
    var(--bg-h) var(--bg-s) clamp(30%, calc(85% - var(--bg-l)), 75%)
  );--color-text-code:hsl(
    var(--bg-h) var(--bg-s) clamp(20%, calc(90% - var(--bg-l)), 85%)
  );--color-text-date:hsl(
    var(--bg-h) var(--bg-s) clamp(20%, calc(92% - var(--bg-l)), 83%)
  );--nav-c1:#E31B0C;--nav-c2:#C99400;--nav-c3:#00838F;--nav-c4:#0C9440;--nav-c5:#7B1FE0;--nav-c6:#0060E6;--nav-c7:#C81FA0;--nav-c8:#E85A96;--nav-c9:#8A93A3;--nav-c10:#141414;--container-width:72ch;--pre-border-radius:0.75rem;--inline-border-radius:0.375rem;--gap-base:1em;--gap-small:0.5em;--breakpoint-mobile:600px}[data-theme=dark]{--bg-l:8%;--bg-s:0%;--color-dot:hsl(var(--bg-h) var(--bg-s) 100% / 7%);--nav-c1:#FF5B4D;--nav-c2:#FFD93D;--nav-c3:#29E4E0;--nav-c4:#3FDD6E;--nav-c5:#B375FF;--nav-c6:#4FA8FF;--nav-c7:#F13DC6;--nav-c8:#FF8FC4;--nav-c9:#F5F5F5;--nav-c10:#5C5C5C}[data-theme=light]{--bg-h:44;--bg-s:50%;--bg-l:95%;--color-dot:hsl(var(--bg-h) var(--bg-s) 0% / 7%);--nav-c1:#E31B0C;--nav-c2:#C99400;--nav-c3:#00838F;--nav-c4:#0C9440;--nav-c5:#7B1FE0;--nav-c6:#0060E6;--nav-c7:#C81FA0;--nav-c8:#E85A96;--nav-c9:#8A93A3;--nav-c10:#141414}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-l:8%;--bg-s:0%;--color-dot:hsl(var(--bg-h) var(--bg-s) 100% / 7%);--nav-c1:#FF5B4D;--nav-c2:#FFD93D;--nav-c3:#29E4E0;--nav-c4:#3FDD6E;--nav-c5:#B375FF;--nav-c6:#4FA8FF;--nav-c7:#F13DC6;--nav-c8:#FF8FC4;--nav-c9:#F5F5F5;--nav-c10:#5C5C5C}}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}.list-unstyled{list-style:none;margin-left:0}.text-muted{color:var(--color-text-muted)}.no-underline{text-decoration:none;border-bottom:none}::selection{background:var(--color-selection-bg);color:var(--color-text-primary)}*{margin:0;padding:0;font:inherit;color:var(--color-text-primary);box-sizing:border-box}ul{list-style-type:disc;margin-left:1.5rem}ol{list-style-type:decimal;margin-left:1.5rem}html{margin:0 0 0 calc(100vw - 100%);-webkit-text-size-adjust:100%;height:100dvh}body{font:var(--font-size-base)/var(--spacing-base)var(--font-family-mono);background-color:var(--color-bg-primary);background-image:radial-gradient(circle,var(--color-dot) 1px,transparent 1px);background-size:20px 20px;background-position:0 0;background-attachment:fixed;min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(auto,var(--container-width));justify-content:center;padding:var(--spacing-lg);gap:var(--spacing-lg)}a{display:inline-block;margin-left:-.16666em;text-decoration:none;border-bottom:1px dotted}a:hover{border-bottom:1px solid}p,pre{margin:var(--spacing-base)0}h1,h2,h3,h4,h5{margin:var(--spacing-base)0;font-weight:700}h2{counter-increment:h2;counter-reset:h3}h3{counter-increment:h3;counter-reset:h4}h4{counter-increment:h4;counter-reset:h5}h5{counter-increment:h5}h2::before{content:counter(h2)". "}h3::before{content:counter(h2)"." counter(h3)". "}h4::before{content:counter(h2)"." counter(h3)"." counter(h4)". "}h5::before{content:counter(h2)"." counter(h3)"." counter(h4)"." counter(h5)". "}time{color:var(--color-text-muted)}footer{padding:calc(var(--spacing-base) * 2)0;text-align:center}footer p{margin-bottom:0}pre{border:1px solid var(--color-border);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--pre-border-radius);white-space:pre-wrap;word-wrap:break-word;font-family:var(--font-family-mono);font-size:var(--font-size-code);line-height:1.6;color:var(--color-text-code);overflow-x:auto;box-shadow:0 1px 2px 0 var(--color-border)}pre code{background:0 0;border:none;padding:0;font-size:inherit;color:inherit}.goat svg{font-family:monospace}p>code,li>code,h1>code,h2>code,h3>code,h4>code,h5>code{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--inline-border-radius);padding:.2em .4em;font-family:var(--font-family-mono);font-size:var(--font-size-code);color:var(--color-text-code);white-space:nowrap}.terms-list{padding-bottom:var(--spacing-base)}.terms-list ul{list-style-type:none;margin-left:0}.terms-list ul li{display:inline-block;font-style:italic;font-size:var(--font-size-small);color:var(--color-text-muted);padding:0 3px}.back-nav{margin-bottom:var(--spacing-base)}.time-list ul{list-style:none;margin-left:0}.time-list li{display:grid;grid-template-columns:auto 1fr;gap:var(--gap-base);align-items:start;padding:var(--spacing-sm)0}@media(max-width:var(--breakpoint-mobile)){.time-list li{grid-template-columns:1fr;gap:var(--gap-small)}.time-list time{font-size:var(--font-size-small)}}.site-nav{font-family:var(--font-family-mono);display:flex;flex-wrap:nowrap;align-items:baseline;gap:.15em;padding-bottom:.5em}.site-nav-trigger{background:0 0;border:none;padding:0;cursor:pointer;font:inherit;display:inline-flex;align-items:baseline;color:var(--color-text-primary);flex-shrink:0;margin-right:auto}.site-nav-name{font-weight:700;color:var(--color-text-primary);margin-left:0;border-bottom:none;flex-shrink:0}.site-nav-name:hover{border-bottom:none;opacity:.75}.site-nav-slash{color:var(--color-text-muted);flex-shrink:0}.site-nav-word{border-bottom:1px dotted var(--color-text-muted);padding-bottom:1px;white-space:nowrap}.site-nav-char{opacity:.55}.site-nav-panel{display:grid;grid-template-rows:0fr}.site-nav-panel.open{grid-template-rows:1fr}.site-nav-panel-inner{overflow:hidden}.site-nav-links{width:fit-content;display:flex;flex-direction:column;align-items:flex-start;gap:.5em}.site-nav-links a{display:inline-block;width:fit-content;font-size:1em;border-bottom:1px dotted;padding-bottom:1px;text-decoration:none;opacity:.92}.site-nav-links a:hover{opacity:1}img{display:block;max-width:100%;height:auto;margin:var(--spacing-base)auto;border:1px solid var(--color-border);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--pre-border-radius)}figure{margin:var(--spacing-base)0;text-align:center}figure img{margin:0 auto}figcaption{color:var(--color-text-muted);font-size:var(--font-size-small);margin-top:calc(var(--spacing-base)/2)}table{width:100%;margin:var(--spacing-base)0;border-collapse:collapse}thead th,th{font-weight:700;text-align:center;border-bottom:2px solid var(--color-border);padding:var(--spacing-sm)}td{padding:var(--spacing-sm);border-bottom:1px solid var(--color-border)}strong{font-weight:700}em{font-style:italic}blockquote{margin:var(--spacing-base)0;padding:var(--spacing-sm)var(--spacing-base);border:1px solid var(--color-border);border-radius:var(--pre-border-radius);background:var(--color-bg-secondary);box-shadow:0 1px 2px 0 var(--color-border);font-style:italic}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}.toc{margin:var(--spacing-base)0;padding:var(--spacing-sm);border:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:var(--pre-border-radius);box-shadow:0 1px 2px 0 var(--color-border)}.toc .toc-content a{text-decoration:none;color:var(--color-text-primary);font-size:var(--font-size-small)}.toc .toc-content ol li{list-style-type:disc!important}@media(max-device-width:600px){body{padding-top:2em}pre{max-width:calc(100vw - 4em)}}@import "assets/css/custom"