:root{color-scheme:dark;--bg: #0d0f0e;--surface: #141715;--surface-strong: #1a1e1b;--text: #e7e9e5;--muted: #939991;--border: #2a2f2b;--accent: #a8d672;--warm: #e1aa63;--max-width: 960px;--reading-width: 720px;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.65}.infrastructure-scene{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.infrastructure-scene canvas{display:block;width:100%;height:100%;opacity:.82}.content-page{--muted: #aeb4ac}.content-page .infrastructure-scene canvas{opacity:.3}.content-page .site-shell:before{content:"";position:fixed;inset:0;z-index:-1;background:#0709088a;pointer-events:none}html.infra-node-hover,html.infra-node-hover body{cursor:grab}html.infra-control-hover,html.infra-control-hover body{cursor:pointer}html.infra-node-dragging,html.infra-node-dragging body{cursor:grabbing;user-select:none}html.infra-node-hover a,html.infra-node-hover button,html.infra-node-dragging a,html.infra-node-dragging button{cursor:pointer}html.show-intro,html.show-intro body{overflow:hidden}.site-shell{position:relative;z-index:1;min-height:100vh}.boot-screen{display:none}html.show-intro .site-shell{opacity:0;transform:translateY(8px)}html.show-intro .boot-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px),var(--bg);background-size:48px 48px;animation:intro-exit .42s ease 2.72s forwards}html.intro-complete .site-shell{animation:site-reveal .5s ease both}.boot-inner{width:min(100% - 3rem,720px);border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#0d0f0eeb;font-family:var(--mono)}.boot-header,.boot-footer{min-height:48px;display:flex;align-items:center;gap:.8rem;color:var(--muted);font-size:.72rem}.boot-header{justify-content:space-between;border-bottom:1px solid var(--border)}.boot-run{color:var(--warm)}.pipeline{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:3.4rem 0 3rem}.pipeline-track{position:absolute;top:4.15rem;left:calc(16.666% + 18px);right:calc(16.666% + 18px);height:1px;overflow:hidden;background:var(--border)}.pipeline-track span{display:block;width:100%;height:100%;background:var(--accent);transform:translate(-100%);animation:pipeline-flow 1.65s ease .42s forwards}.pipeline-step{position:relative;z-index:1;display:grid;justify-items:center;color:var(--muted);opacity:0;transform:translateY(6px)}.pipeline-build{animation:step-ready .28s ease .18s forwards}.pipeline-verify{animation:step-ready .28s ease .9s forwards}.pipeline-ship{animation:step-ready .28s ease 1.62s forwards}.pipeline-node{width:36px;height:36px;display:grid;place-items:center;margin-bottom:.9rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--muted);font-size:.68rem}.pipeline-step strong{color:var(--text);font-size:.78rem;font-weight:600}.pipeline-step small{margin-top:.15rem;font-size:.66rem}.pipeline-step:after{content:"";position:absolute;top:11px;width:10px;height:6px;border-left:2px solid var(--bg);border-bottom:2px solid var(--bg);opacity:0;transform:rotate(-45deg)}.pipeline-build .pipeline-node{animation:node-pass .22s ease .52s forwards}.pipeline-build:after{animation:check-pass .18s ease .57s forwards}.pipeline-verify .pipeline-node{animation:node-pass .22s ease 1.24s forwards}.pipeline-verify:after{animation:check-pass .18s ease 1.29s forwards}.pipeline-ship .pipeline-node{animation:node-pass .22s ease 1.96s forwards}.pipeline-ship:after{animation:check-pass .18s ease 2.01s forwards}.boot-log{min-height:94px;padding:1rem 0;border-top:1px solid var(--border);color:var(--muted);font-size:.7rem}.boot-log-line{margin:.25rem 0;opacity:0;transform:translate(-5px)}.boot-log-line span{display:inline-block;width:1.5rem;color:var(--accent)}.line-one{animation:log-in .18s ease .35s forwards}.line-two{animation:log-in .18s ease 1.1s forwards}.line-three{animation:log-in .18s ease 1.85s forwards}.boot-footer{border-top:1px solid var(--border)}.boot-mark{width:24px;height:24px;display:grid;place-items:center;border-radius:4px;background:var(--accent);color:var(--bg);font-weight:800}.boot-footer button{margin-left:auto;border:0;background:transparent;color:var(--muted);font:inherit;cursor:pointer}.boot-footer button:hover,.boot-footer button:focus-visible{color:var(--accent)}@keyframes pipeline-flow{to{transform:translate(0)}}@keyframes step-ready{to{opacity:1;transform:translateY(0)}}@keyframes node-pass{to{border-color:var(--accent);background:var(--accent);color:transparent}}@keyframes check-pass{to{opacity:1}}@keyframes log-in{to{opacity:1;transform:translate(0)}}@keyframes intro-exit{to{opacity:0;transform:scale(1.015);visibility:hidden}}@keyframes site-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}body::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-decoration-color:var(--muted);text-underline-offset:.22em;transition:color .16s ease,border-color .16s ease}a:hover{color:var(--accent)}img{display:block;max-width:100%}main{width:min(100% - 3rem,var(--max-width));margin:0 auto;padding-bottom:5rem}.skip-link{position:absolute;top:-100px;left:1rem;z-index:20;border:1px solid var(--accent);background:var(--bg);color:var(--accent);padding:.5rem .75rem;font-family:var(--mono);font-size:.82rem}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border);background:#0d0f0ee6;backdrop-filter:blur(12px)}.nav{width:min(100% - 3rem,var(--max-width));min-height:64px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--text);font-family:var(--mono);font-size:.92rem;font-weight:700;text-decoration:none}.brand img{width:28px;height:28px}.nav-links{display:flex;align-items:center;gap:1.5rem;color:var(--muted);font-family:var(--mono);font-size:.8rem}.nav-links a{padding:.25rem 0;text-decoration:none}.nav-links a[aria-current=page]{color:var(--text);box-shadow:inset 0 -1px var(--accent)}.hero{max-width:820px;min-height:72svh;padding:7rem 0 5rem;border-bottom:1px solid var(--border);text-shadow:0 2px 18px var(--bg)}.command,.eyebrow,.post-meta,.tags{font-family:var(--mono)}.command{margin:0 0 1.75rem;color:var(--muted);font-size:.84rem}.command span{color:var(--accent)}h1,h2,h3{margin:0;line-height:1.12;letter-spacing:0}h1{max-width:14ch;font-size:4.6rem;font-weight:650}h2{font-size:1.1rem;font-weight:650}h3{font-size:1.2rem;font-weight:620}.lead{max-width:660px;margin:1.75rem 0 0;color:#b6bbb4;font-size:1.12rem}.actions{display:flex;flex-wrap:wrap;gap:1.75rem;margin-top:2.25rem}.actions a,.section-link{color:var(--text);font-family:var(--mono);font-size:.83rem;text-decoration:none}.actions a span,.section-link span{color:var(--accent)}.section{padding:3.5rem 0;border-bottom:1px solid var(--border);text-shadow:0 1px 12px var(--bg)}.section-heading{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:1rem;margin-bottom:2rem}.project-list{display:grid}.project-card{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;padding:1.75rem 0;border-top:1px solid var(--border)}.project-card:last-child{border-bottom:1px solid var(--border)}.project-meta{display:grid;align-content:start;gap:.7rem;color:var(--muted);font-family:var(--mono);font-size:.73rem}.project-status{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent)}.project-status>span{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #a8d6721a}.project-summary h3 a{text-decoration:none}.project-summary p{max-width:650px;margin:.65rem 0 0;color:var(--muted);font-size:.92rem}.project-actions{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:1rem;font-family:var(--mono);font-size:.75rem}.project-actions a{color:var(--text);text-decoration:none}.project-actions a span{color:var(--accent)}.post-list{display:grid}.post-card{display:grid;grid-template-columns:9rem minmax(0,1fr) 2rem;gap:1.5rem;align-items:start;padding:1.5rem 0;border-top:1px solid var(--border)}.post-card:last-child{border-bottom:1px solid var(--border)}.post-card:hover{border-color:#4b544c}.post-meta{display:grid;gap:.55rem;color:var(--muted);font-size:.73rem;line-height:1.45}.tags{display:flex;flex-wrap:wrap;gap:.35rem .65rem;color:var(--muted);font-size:.72rem}.tag{color:inherit;text-decoration:none}.post-summary h3 a{text-decoration:none}.post-summary p{max-width:620px;margin:.6rem 0 0;color:var(--muted);font-size:.92rem}.post-arrow{color:var(--accent);font-family:var(--mono);text-align:right;text-decoration:none}.article{max-width:var(--reading-width);margin:0 auto;text-shadow:0 1px 12px var(--bg)}.article-header{padding:5rem 0 3rem;border-bottom:1px solid var(--border);margin-bottom:2.5rem}.article-header .eyebrow{display:block;margin-bottom:1.5rem;color:var(--accent);font-size:.78rem}.article-header h1{max-width:17ch;font-size:3.4rem}.article-header .tags{margin-top:1.5rem}.article-header .tag:before{content:"#"}.prose{color:#c5c9c3;font-size:1rem}.content-page .prose{color:#d7dad5}.prose h2{margin:2.75rem 0 1rem;color:var(--text);font-size:1.45rem}.prose h3{margin:2rem 0 .8rem;color:var(--text)}.prose p,.prose ul,.prose ol{margin-top:0;margin-bottom:1.4rem}.prose li+li{margin-top:.4rem}.prose code{border:1px solid var(--border);border-radius:3px;background:var(--surface);color:#c9e4a8;padding:.12rem .32rem;font-family:var(--mono);font-size:.88em}.prose pre{margin:1.75rem 0;border:1px solid var(--border);border-radius:6px;background:var(--surface);padding:1.1rem 1.2rem;overflow-x:auto}.prose pre code{border:0;background:transparent;padding:0}.prose blockquote{margin:1.75rem 0;border-left:2px solid var(--warm);padding-left:1.25rem;color:var(--muted)}.article[dir=rtl]{text-align:right}.article[dir=rtl] .article-header h1{max-width:22ch}.article[dir=rtl] .prose blockquote{border-right:2px solid var(--warm);border-left:0;padding-right:1.25rem;padding-left:0}.article[dir=rtl] .prose pre,.article[dir=rtl] .prose code{direction:ltr;text-align:left}.footer{width:min(100% - 3rem,var(--max-width));margin:0 auto;padding:1.5rem 0 3rem;display:flex;justify-content:space-between;gap:1.5rem;color:var(--muted);font-family:var(--mono);font-size:.72rem}.footer p{margin:0}.status-dot{display:inline-block;width:6px;height:6px;margin-right:.45rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #a8d6721a}@media(max-width:720px){.infrastructure-scene canvas{opacity:.58}.boot-inner{width:min(100% - 2rem,720px)}.pipeline{padding-block:2.75rem 2.5rem}.pipeline-track{top:3.5rem}main,.nav,.footer{width:min(100% - 2rem,var(--max-width))}.nav{min-height:58px;gap:.65rem}.brand span{display:none}.nav-links{gap:.75rem;font-size:.7rem}.hero{min-height:66svh;padding:4.5rem 0 3.5rem}h1{font-size:3rem}.section{padding:2.75rem 0}.section-heading{grid-template-columns:1fr auto;gap:.65rem}.project-card{grid-template-columns:1fr;gap:.9rem}.project-meta{display:flex;flex-wrap:wrap;justify-content:space-between}.post-card{grid-template-columns:1fr 1.5rem;gap:.8rem 1rem}.post-meta{grid-column:1 / -1;display:flex;justify-content:space-between;gap:1rem}.post-arrow{grid-column:2;grid-row:2}.article-header{padding:3.75rem 0 2.5rem}.article-header h1{font-size:2.6rem}.footer{flex-direction:column;gap:.45rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.boot-screen{display:none!important}.site-shell{opacity:1!important;transform:none!important;animation:none!important}.infrastructure-scene canvas{opacity:.5}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:420px){.boot-header,.boot-footer{min-height:42px}.pipeline{gap:.35rem}.pipeline-step small{font-size:.6rem}.nav-links{gap:.75rem}.nav-links a:last-child span{display:none}h1{font-size:2.55rem}.lead{font-size:1rem}.section-link{font-size:0}.section-link span{font-size:.9rem}.post-meta{display:grid;justify-content:initial}}
