@font-face{font-family:Libre Franklin;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/LibreFranklin-italic-latinext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/LibreFranklin-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/LibreFranklin-normal-latinext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Franklin;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/LibreFranklin-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Martian Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/MartianMono-normal-latinext.woff2) format("woff2");unicode-range:U+0100-02AF,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1E00-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Martian Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/MartianMono-normal-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #fcfcfa;--surface: #f4f4ef;--text: #16181a;--muted: #5d6166;--faint: #9a9ea3;--accent: #2f5d8a;--accent-deep: #224568;--alert: #b34b2e;--border: #d7d9d4;--rule-strong: #16181a;--c-til: #8a6d1d;--c-finding: #44702f;--c-reflection: #6f5a92;--c-decision: #2f5d8a;--c-snippet: #5d6166;--c-retro: #a35a32;--c-link: #2c7268;--c-news: #b34b2e;--font-display: "Martian Mono", ui-monospace, Menlo, monospace;--font-body: "Libre Franklin", "Helvetica Neue", sans-serif;--font-ui: "Libre Franklin", "Helvetica Neue", sans-serif;--font-mono: "Martian Mono", ui-monospace, Menlo, monospace;--radius: 0px;--measure: 66ch}@media(prefers-color-scheme:dark){html:not([data-mode=light]){--bg: #15171a;--surface: #1d2024;--text: #e6e8e6;--muted: #9aa0a6;--faint: #6a7076;--accent: #6f9fce;--accent-deep: #4d7eae;--alert: #d4754f;--border: #2c3036;--rule-strong: #e6e8e6;--c-til: #d0a94f;--c-finding: #8db472;--c-reflection: #a991cd;--c-decision: #6f9fce;--c-snippet: #9aa0a6;--c-retro: #d08a64;--c-link: #66b3a6;--c-news: #d4754f}}html[data-mode=dark]{--bg: #15171a;--surface: #1d2024;--text: #e6e8e6;--muted: #9aa0a6;--faint: #6a7076;--accent: #6f9fce;--accent-deep: #4d7eae;--alert: #d4754f;--border: #2c3036;--rule-strong: #e6e8e6;--c-til: #d0a94f;--c-finding: #8db472;--c-reflection: #a991cd;--c-decision: #6f9fce;--c-snippet: #9aa0a6;--c-retro: #d08a64;--c-link: #66b3a6;--c-news: #d4754f}*{box-sizing:border-box}html{font-size:16px;scrollbar-gutter:stable}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui);line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.container{max-width:760px;margin:0 auto;padding:0 1.25rem}h1,h2,h3{line-height:1.25;font-family:var(--font-display)}.muted{color:var(--muted)}.section-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-top:2.4rem;font-family:var(--font-ui)}.bs-masthead{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:1.8rem 0 1rem}.bs-chip{grid-column:1;font-size:.64rem;font-weight:700;letter-spacing:.16em;color:var(--bg);background:var(--accent);padding:.5em .75em;border-radius:3px;text-align:center;line-height:1.55;font-family:var(--font-ui)}.bs-chip span{font-weight:500;opacity:.8;letter-spacing:.05em}.bs-title-wrap{grid-column:2;text-align:center}.bs-title,.bs-title a{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,5vw,2.5rem);margin:0;letter-spacing:-.04em;line-height:1.15;display:inline-block;color:var(--text)}p.bs-title{margin:0}.bs-title a:hover{color:var(--accent);text-decoration:none}.bs-tagline{margin:.35rem 0 0;font-size:.72rem;color:var(--muted);font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.22em;font-weight:500}.bs-rule{height:3px;background:var(--accent);margin-top:.55rem;box-shadow:0 5px 0 -4px var(--accent)}.bs-nav{display:flex;gap:.9rem;justify-content:center;padding:.7rem 0 .6rem;font-size:.68rem;font-weight:600;letter-spacing:.18em;flex-wrap:wrap;font-family:var(--font-ui)}.bs-nav a{color:var(--text)}.bs-nav a:hover{color:var(--accent);text-decoration:none}.bs-nav span{color:var(--faint)}.bs-hairline{height:1px;background:var(--border)}.chip{display:inline-flex;align-items:center;gap:.35em;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.2em .65em;border-radius:0;border:1px solid color-mix(in srgb,var(--chip-c) 45%,transparent);color:var(--chip-c);background:color-mix(in srgb,var(--chip-c) 10%,transparent);white-space:nowrap;font-family:var(--font-ui)}.chip-til{--chip-c: var(--c-til)}.chip-finding{--chip-c: var(--c-finding)}.chip-reflection{--chip-c: var(--c-reflection)}.chip-decision{--chip-c: var(--c-decision)}.chip-snippet{--chip-c: var(--c-snippet)}.chip-retro{--chip-c: var(--c-retro)}.chip-link{--chip-c: var(--c-link)}.chip-news{--chip-c: var(--c-news)}.broadsheet{margin-top:.3rem}.bs-fold{display:grid;grid-template-columns:3fr 2fr;gap:0;padding:1.5rem 0}.bs-lead{padding-right:1.6rem;border-right:1px solid var(--border)}.bs-kicker{display:flex;gap:.6rem;align-items:center;font-size:.72rem;color:var(--muted);margin-bottom:.55rem;font-family:var(--font-ui)}.bs-lead-head{font-family:var(--font-display);font-weight:700;font-size:clamp(1.2rem,3vw,1.7rem);line-height:1.2;color:var(--text);display:block;letter-spacing:-.03em}.bs-lead-head:hover{color:var(--accent);text-decoration:none}.bs-lead-body{font-family:var(--font-body);font-size:1.04rem;color:var(--text);margin-top:.85rem;line-height:1.65}.bs-byline{display:flex;gap:.8rem;margin-top:.9rem;font-size:.76rem;color:var(--muted);font-family:var(--font-ui)}.bs-side{padding-left:1.6rem;display:grid;gap:0;align-content:start}.bs-side-label{font-size:.64rem;font-weight:700;letter-spacing:.2em;color:var(--accent);border-bottom:2px solid var(--accent);padding-bottom:.35rem;font-family:var(--font-ui)}.bs-side-story{padding:.85rem 0;border-bottom:1px solid var(--border)}.bs-side-story:last-child{border-bottom:0}.bs-side-head{font-family:var(--font-display);font-weight:700;font-size:1.04rem;line-height:1.25;color:var(--text);display:block}.bs-side-head:hover{color:var(--accent);text-decoration:none}.bs-side-body{font-family:var(--font-body);font-size:.85rem;color:var(--muted);margin:.35rem 0 .25rem}.bs-date{font-size:.72rem;color:var(--faint);font-family:var(--font-ui)}.bs-section-rule{height:2px;background:var(--rule-strong);margin-top:.6rem;box-shadow:0 4px 0 -3px var(--rule-strong)}.bs-section-head{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.7rem;font-weight:700;letter-spacing:.18em;font-family:var(--font-ui)}.bs-section-meta{color:var(--muted);font-weight:400;letter-spacing:.05em;text-transform:none}.bs-archive{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:1.3rem;padding:1.2rem 0}.bs-brief-head{font-family:var(--font-display);font-weight:650;font-size:.96rem;line-height:1.3;color:var(--text);display:block;margin-top:.25rem}.bs-brief-head:hover{color:var(--accent);text-decoration:none}.bs-colophon{text-align:center;font-size:.66rem;letter-spacing:.2em;color:var(--muted);padding:1.8rem 0 .5rem;border-top:1px solid var(--border);margin-top:1.2rem;font-family:var(--font-ui)}.bs-colophon .streak{justify-content:center;display:inline-grid;margin:0 auto 1rem}.river{list-style:none;margin:1.3rem 0 0;padding:0;display:grid;gap:.9rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;transition:border-color .15s ease}.card:hover{border-color:var(--accent-deep)}.card-meta{display:flex;align-items:center;gap:.6rem;font-size:.74rem;color:var(--muted);flex-wrap:wrap;font-family:var(--font-ui)}.card-title{display:block;font-family:var(--font-display);font-size:1.08rem;font-weight:700;margin:.4rem 0 .25rem;color:var(--text)}.card-title:hover{color:var(--accent);text-decoration:none}.card-excerpt{margin:0;font-family:var(--font-body);font-size:.88rem;color:var(--muted)}.card-tags{margin-top:.45rem;font-size:.74rem;color:var(--muted);font-family:var(--font-ui)}.filterbar{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:1.2rem}.filterbar button{font-family:var(--font-ui);font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:2px;padding:.35em .9em}.filterbar button:hover{border-color:var(--accent-deep);color:var(--text)}.filterbar button[aria-pressed=true]{color:var(--bg);background:var(--accent);border-color:var(--accent)}.post-header{margin:2.2rem 0 1.4rem}.post-title{font-size:clamp(1.3rem,3.5vw,1.8rem);line-height:1.2;margin:.45rem 0;font-weight:700;letter-spacing:-.03em}.post-meta{display:flex;gap:.7rem;align-items:center;color:var(--muted);font-size:.78rem;flex-wrap:wrap;font-family:var(--font-ui)}.post-body{font-family:var(--font-body);font-size:1.06rem;max-width:var(--measure);line-height:1.7}.post-body h1,.post-body h2,.post-body h3{font-family:var(--font-display);margin-top:1.6em}.post-body pre{font-family:var(--font-mono);font-size:.82rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent-deep);border-radius:3px;padding:.9rem 1rem;overflow-x:auto;line-height:1.55}.post-body code{font-family:var(--font-mono);font-size:.88em;background:color-mix(in srgb,var(--accent) 9%,transparent);padding:.08em .3em;border-radius:3px}.post-body pre code{background:none;padding:0}.post-body blockquote{margin:1.1rem 0;padding:.15rem 1.1rem;border-left:3px solid var(--accent);color:var(--muted);font-style:italic}.post-body hr{border:0;height:1px;background:var(--border);margin:1.6rem 0}.post-footer{margin-top:2.6rem;padding-top:1.2rem;border-top:1px solid var(--border);font-size:.85rem;display:grid;gap:.8rem;font-family:var(--font-ui)}.prevnext{display:flex;justify-content:space-between;gap:1rem}.streak{display:grid;grid-template-rows:repeat(7,9px);grid-auto-flow:column;gap:3px;margin:1rem 0}.streak i{width:9px;height:9px;border-radius:1px;background:var(--border)}.streak i.on{background:var(--accent)}.proj-grid{display:grid;gap:1.2rem;padding:1.2rem 0 .6rem}.proj-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:1.25rem 1.45rem}.proj-head{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.proj-title{font-family:var(--font-display);font-weight:800;font-size:1.3rem;margin:0;letter-spacing:-.01em}.proj-title a{color:var(--text)}.proj-title a:hover{color:var(--accent);text-decoration:none}.proj-dormant{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:2px;padding:.2em .6em;font-family:var(--font-ui)}.proj-parent{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:2px;padding:.2em .6em;font-family:var(--font-ui)}.proj-parent:hover{text-decoration:none;background:color-mix(in srgb,var(--accent) 12%,transparent)}.proj-oneliner{font-family:var(--font-body);font-style:italic;color:var(--muted);margin:.3rem 0 .65rem;font-size:.98rem}.proj-body{font-family:var(--font-body);font-size:.92rem;max-width:70ch;line-height:1.65}.proj-body p{margin:.4rem 0}.proj-arch{font-family:var(--font-mono);font-size:.74rem;color:var(--muted);background:color-mix(in srgb,var(--accent) 5%,transparent);border:1px solid var(--border);border-left:3px solid var(--accent-deep);border-radius:3px;padding:.55em .8em;margin-top:.75rem}.proj-arch span{font-family:var(--font-ui);font-size:.6rem;font-weight:700;letter-spacing:.14em;color:var(--accent);margin-right:.5em}.proj-foot{display:flex;justify-content:space-between;gap:1rem;margin-top:.8rem;padding-top:.65rem;border-top:1px solid var(--border);font-size:.74rem;flex-wrap:wrap;font-family:var(--font-ui)}.proj-tech{color:var(--muted);letter-spacing:.03em}.hub-head .proj-head{margin-top:1.9rem}.hub-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.4rem,4vw,1.9rem);margin:0;letter-spacing:-.03em}.hub-fold{display:grid;grid-template-columns:3fr 2fr;gap:1.6rem;margin-top:.7rem}.hub-prose{border-right:1px solid var(--border);padding-right:1.6rem}.hub-prose.proj-body{font-size:.98rem}.hub-facts{display:grid;gap:1rem;align-content:start;font-size:.84rem;font-family:var(--font-ui)}.hub-fact{display:grid;gap:.3rem}.hub-fact-label{font-size:.6rem;font-weight:700;letter-spacing:.16em;color:var(--accent)}.hub-fact-flow{font-family:var(--font-mono);font-size:.76rem;color:var(--muted);line-height:1.55}.hub-head+.bs-section-rule,.cstats .bs-section-rule{margin-top:1.5rem}.hub-dwg{margin-top:1.8rem}.hub-shot{margin:1.5rem 0 0}.hub-shot img{width:100%;max-height:460px;object-fit:contain;object-position:left top;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);display:block}.hub-shot figcaption{font-size:.74rem;color:var(--muted);padding-top:.45rem;font-style:italic;font-family:var(--font-body)}.cstats-bars{display:flex;align-items:flex-end;gap:3px;height:50px;padding:.9rem 0 .4rem}.cstats-bar{flex:1;min-width:4px;background:color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:1px 1px 0 0}.cstats-bar.ms{background:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.cstats ins{color:var(--c-finding);text-decoration:none}.cstats del{color:var(--alert);text-decoration:none}.cstats-ms{list-style:none;margin:.45rem 0 0;padding:0;font-size:.8rem;font-family:var(--font-ui)}.cstats-ms li{padding:.3rem 0;border-bottom:1px dashed var(--border)}.cstats-ms time{color:var(--accent);font-weight:600;margin-right:.6rem;font-size:.7rem;font-family:var(--font-mono)}.site-footer{margin-top:4rem;padding:1.4rem 0 2.4rem;border-top:1px solid var(--border);color:var(--muted);font-size:.74rem;letter-spacing:.04em;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-family:var(--font-ui)}@media(max-width:680px){.bs-fold{grid-template-columns:1fr}.bs-lead{padding-right:0;border-right:0;border-bottom:2px solid var(--rule-strong);padding-bottom:1.1rem}.bs-side{padding-left:0;padding-top:.9rem}.bs-masthead{grid-template-columns:1fr;gap:.7rem;justify-items:center}.hub-fold{grid-template-columns:1fr}.hub-prose{border-right:0;padding-right:0;border-bottom:1px solid var(--border);padding-bottom:1rem}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.share-row{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}.share-label{font-size:.6rem;font-weight:700;letter-spacing:.16em;color:var(--accent)}.share-copy{font:inherit;font-size:.85rem;cursor:pointer;background:none;border:0;color:var(--accent);padding:0}.share-copy:hover{text-decoration:underline;text-underline-offset:3px}.mode-toggle{grid-column:3;justify-self:end;cursor:pointer;font-size:.9rem;line-height:1;padding:.45em .55em;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:0}.mode-toggle:hover{color:var(--accent);border-color:var(--accent)}.chip-diary{--chip-c: var(--muted)}.bs-diary{padding:1.1rem 0 1.3rem}.bs-diary-head{font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.02em;color:var(--text)}.bs-diary-head:hover{color:var(--accent);text-decoration:none}.bs-diary-body{font-family:var(--font-body);font-size:.92rem;color:var(--muted);margin:.5rem 0;max-width:72ch;line-height:1.6}.bs-diary-more{font-size:.74rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.chip-spark{--chip-c: var(--faint)}.bs-sparks{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.8rem;padding:1rem 0 1.2rem}.bs-spark{display:grid;grid-template-columns:auto 1fr;gap:.25rem .55rem;align-items:baseline;border:1px dashed var(--border);padding:.7rem .85rem;color:var(--text)}.bs-spark:hover{border-color:var(--accent);text-decoration:none}.bs-spark-glyph{font-size:.85rem}.bs-spark-title{font-family:var(--font-body);font-style:italic;font-size:.9rem;line-height:1.4}.bs-spark .bs-date{grid-column:2}.machine-stats{display:flex;gap:1.4rem;flex-wrap:wrap;font-family:var(--font-ui);font-size:.8rem;color:var(--muted);border:1px solid var(--border);border-left:3px solid var(--accent-deep);padding:.7rem 1rem;margin:1rem 0 1.4rem}.machine-stats b{color:var(--accent);font-family:var(--font-mono)}.dwg{margin:1.6rem 0}.dwg svg{width:100%;height:auto;display:block;background:var(--surface)}.dwg-frame{fill:none;stroke:var(--text);stroke-width:1.5}.dwg-frame.thin{stroke-width:.75;stroke:var(--muted)}.dwg-box{fill:var(--bg);stroke:var(--text);stroke-width:1.1}.dwg-box.dashed{stroke-dasharray:5 4;stroke:var(--muted)}.dwg-box.strong{stroke-width:2}.dwg-gate{fill:color-mix(in srgb,var(--accent) 9%,var(--bg));stroke:var(--accent);stroke-width:2.4}.dwg-flow{stroke:var(--accent-deep);stroke-width:1.4;fill:none}.dwg-flow.thin{stroke-width:1;stroke-dasharray:4 3}.dwg-arrowhead{stroke:var(--accent-deep);stroke-width:1.6}.dwg-h1{font-family:var(--font-mono);font-size:17px;font-weight:700;letter-spacing:.14em;fill:var(--text)}.dwg-label{font-family:var(--font-mono);font-size:12.5px;font-weight:700;letter-spacing:.08em;fill:var(--text)}.dwg-label.gate{fill:var(--accent);font-size:14px;letter-spacing:.18em}.dwg-item{font-family:var(--font-ui);font-size:12.5px;fill:var(--muted)}.dwg-item.gate{fill:var(--text)}.dwg-item.em{font-style:italic;fill:var(--text)}.dwg-tiny{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;fill:var(--muted)}.dwg figcaption{font-size:.76rem;color:var(--muted);font-style:italic;padding-top:.5rem;font-family:var(--font-body)}
