:root{--bg:#1b0a23;--bg-deep:#150719;--lime:#b6d63f;--green:#35c98d;--violet:#8f6fd6;--violet-dim:#6b4fa8;--violet-bright:#b79cf5;--rule:#8f6fd647;--focus:#b6d63f;--font-display:var(--font-display-loaded), "Poppins", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:var(--font-mono-loaded), "JetBrains Mono", ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace;--shell:1180px;--gutter:clamp(1.5rem, 5vw, 5.5rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{background:var(--bg);min-height:100svh;color:var(--violet);font-family:var(--font-mono);letter-spacing:.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.75}::selection{background:var(--lime);color:var(--bg-deep)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.shell{width:100%;max-width:var(--shell);padding-inline:var(--gutter);margin-inline:auto}.site-shell{flex-direction:column;min-height:100svh;display:flex}.skip-link{z-index:20;background:var(--lime);color:var(--bg-deep);font-family:var(--font-mono);padding:.6rem 1rem;text-decoration:none;position:absolute;top:0;left:-9999px}.skip-link:focus{top:1rem;left:1rem}.site-header{padding-block:clamp(1.75rem,4vw,2.75rem)}.header-inner{justify-content:space-between;align-items:baseline;gap:1.5rem;display:flex}.brand{color:var(--violet-dim);font-family:var(--font-mono);letter-spacing:.04em;font-size:.85rem;text-decoration:none;transition:color .16s}.brand:hover{color:var(--lime)}.site-nav{flex-wrap:wrap;justify-content:flex-end;gap:clamp(1.1rem,3vw,2.25rem);display:flex}.site-nav a{color:var(--violet);font-family:var(--font-mono);font-size:.9rem;text-decoration:none;transition:color .16s;position:relative}.site-nav a:after{background:var(--lime);content:"";width:0;height:1px;transition:width .2s;position:absolute;bottom:-.35rem;left:0}.site-nav a:hover,.site-nav a.active{color:var(--lime)}.site-nav a:hover:after,.site-nav a.active:after{width:100%}@media (max-width:640px){.header-inner{flex-direction:column;align-items:flex-start;gap:.9rem}.site-nav{justify-content:flex-start}}main{flex:1;padding-block:clamp(3rem,11vh,8rem) clamp(4rem,12vh,8rem)}.stack{flex-direction:column;gap:clamp(4rem,11vh,8rem);display:flex}.display{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(1.35rem,3.1vw,2.05rem);font-weight:700;line-height:1.32}.display .lime{color:var(--lime)}.display .green{color:var(--green)}.display .violet{color:var(--violet-bright)}.display-line{display:block}.intro-placeholder{min-height:clamp(7rem,17vh,11rem)}.prose{max-width:68ch;color:var(--violet);margin:0}.prose+.prose{margin-top:1.5rem}.prose a{color:var(--lime);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .16s}.prose a:hover{border-bottom-color:var(--lime)}.prose-dim{color:var(--violet-dim);font-size:.85rem}.rule{background-image:linear-gradient(to right, var(--rule) 0 2px, transparent 2px 7px);background-repeat:repeat-x;background-size:7px 1px;border:0;width:min(100%,30rem);height:1px;margin:0}.tech-heads{margin-bottom:clamp(2.5rem,6vh,4rem)}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,3rem);display:grid}.tech-grid ul{margin:0;padding:0;list-style:none}.tech-grid li{color:var(--violet)}.tech-grid li:nth-child(3n+2){color:var(--green)}.tech-grid li:nth-child(4n+1){color:var(--violet-bright)}@media (max-width:720px){.tech-grid{grid-template-columns:1fr;gap:1.75rem}}.section-head{justify-content:space-between;align-items:baseline;gap:1.5rem;margin-bottom:clamp(2rem,5vh,3rem);display:flex}.kicker{color:var(--violet-dim);font-family:var(--font-mono);letter-spacing:.08em;margin:0 0 .75rem;font-size:.8rem;font-weight:400}.section-head .kicker{white-space:nowrap;margin:0}@media (max-width:720px){.section-head{flex-direction:column;gap:.75rem}}.entries+.kicker,.entries+* .kicker,.group+.group{margin-top:clamp(2.5rem,6vh,4rem)}.entries{flex-direction:column;display:flex}.entry{border-top:1px solid var(--rule);grid-template-columns:8rem minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);padding-block:clamp(2rem,5vh,3rem);display:grid}.entry:last-child{border-bottom:1px solid var(--rule)}.entry-compact{padding-block:.9rem}.entry-compact .entry-body p{margin:0}.entry-meta{color:var(--violet-dim);letter-spacing:.06em;flex-direction:column;gap:.25rem;font-size:.8rem;display:flex}.entry-title{color:var(--lime);font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 .75rem;font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:700}.entry-org{color:var(--green);margin:0 0 .9rem;font-size:.9rem}.entry-body p{max-width:70ch;margin:0 0 .9rem}.entry-body ul{max-width:70ch;margin:0 0 1.1rem;padding:0;list-style:none}.entry-body li{padding-left:1.4rem;position:relative}.entry-body li:before{color:var(--violet-dim);content:"—";position:absolute;left:0}.tags{color:var(--violet-dim);flex-wrap:wrap;gap:.4rem 1rem;font-size:.8rem;display:flex}.tags span:before{content:"#";color:var(--violet-dim);opacity:.65}@media (max-width:720px){.entry{grid-template-columns:1fr;gap:.9rem}.entry-meta{flex-direction:row;gap:1rem}}.link-row{border-top:1px solid var(--rule);color:var(--violet);grid-template-columns:10rem minmax(0,1fr) auto;align-items:baseline;gap:clamp(.75rem,3vw,2rem);padding-block:1.1rem;text-decoration:none;transition:color .16s;display:grid}.link-row:last-child{border-bottom:1px solid var(--rule)}:is(a.link-row:hover .link-label,a.link-row:focus-visible .link-label){color:var(--lime)}a.link-row:hover .link-handle{color:var(--green)}.link-label{color:var(--violet-bright);transition:color .16s}.link-handle{color:var(--violet);overflow-wrap:anywhere;transition:color .16s}.link-note{color:var(--violet-dim);text-align:right;font-size:.8rem}.link-row.pending{opacity:.55}@media (max-width:720px){.link-row{grid-template-columns:1fr;gap:.15rem}.link-note{text-align:left}}.site-footer{color:var(--violet-dim);letter-spacing:.05em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;padding-block:clamp(2rem,5vh,3rem);font-size:.78rem;display:flex}.site-footer a{color:var(--violet-dim);text-decoration:none;transition:color .16s}.site-footer a:hover{color:var(--lime)}
