:root{color-scheme:light;--site-font: "Helvetica Neue", Helvetica, Arial, sans-serif;--paper: #f5f4ef;--ink: #171714;--muted: #6c6a62;--line: #d7d5cc;--hover: #fffef9;--yellow: #ffd447;--red: #ff5a36;--blue: #3679ff;--green: #38c98b;--purple: #8b5cf6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--site-font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}.skip-link{position:fixed;top:10px;left:10px;z-index:10;padding:8px 11px;background:var(--ink);color:#fff;font-size:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}main{width:min(720px,calc(100% - 40px));margin-inline:auto}.hero{padding:52px 0 36px}h1,h2,p{margin-top:0}h1{margin-bottom:6px;font-size:clamp(46px,7vw,58px);font-weight:700;line-height:1.05;letter-spacing:-.035em}.intro{margin-bottom:10px;font-size:20px;letter-spacing:0}.intro a{color:var(--ink);text-decoration:none}.intro a:hover,.intro a:focus-visible{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.muni-link{display:inline-flex;align-items:center;gap:5px}.muni-mark{width:17px;height:17px;flex:0 0 auto}.intro a:visited,.intro a.visited-link{color:#77756e}.intro a:active{color:#4c4a45}.social-links{display:flex;flex-wrap:wrap;gap:8px}.social-links a{display:block;width:22px;height:22px;text-decoration:none}.social-links a:focus-visible{outline:1px dotted #000000;outline-offset:2px}.social-links a:visited,.social-links a.visited-link{color:#77756e}.social-links a:active{transform:translate(1px,1px)}.social-icon,.social-icon svg{display:block;width:22px;height:22px}.social-icon{image-rendering:pixelated}.social-icon svg{overflow:visible;shape-rendering:crispEdges;filter:drop-shadow(1px 1px 0 rgb(23 23 20 / 35%))}.social-links a:visited .social-icon,.social-links a.visited-link .social-icon{opacity:.58}.section{padding-top:34px}.section-heading{margin-bottom:5px}h2{margin-bottom:0;font-size:26px;font-weight:700;letter-spacing:-.02em}.item-list{display:flex;flex-direction:column;gap:0}.list-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;padding:1px 0;text-decoration:none}.list-item:hover,.list-item:focus-visible{outline:none}.list-item:active{transform:translate(1px,1px)}.pixel-icon{width:23.4px;height:23.4px;display:grid;place-items:center;image-rendering:pixelated}.pixel-icon svg{width:23.4px;height:23.4px;overflow:visible;shape-rendering:crispEdges;filter:drop-shadow(1px 1px 0 rgb(23 23 20 / 35%))}.pixel-icon svg *{transform-box:fill-box;transform-origin:center;animation-play-state:paused!important}.list-item:hover .pixel-icon svg *,.list-item:focus-visible .pixel-icon svg *{animation-play-state:running!important}.pixel-icon .c-yellow{fill:var(--yellow)}.pixel-icon .c-red{fill:var(--red)}.pixel-icon .c-blue{fill:var(--blue)}.pixel-icon .c-green{fill:var(--green)}.pixel-icon .c-purple{fill:var(--purple)}.pixel-icon .c-ink{fill:var(--ink)}.pixel-icon .c-paper{fill:#fffef9}.pixel-icon .c-white{fill:#fff}.pixel-icon .c-gray-light{fill:#d4d0c8}.pixel-icon .c-gray{fill:gray}.pixel-icon .c-gray-dark{fill:#404040}.pixel-icon .c-cyan{fill:#00d8d8}.pixel-icon .c-amber-light{fill:#d99a3d}.pixel-icon .stroke-ink{stroke:#000;stroke-width:1;stroke-linejoin:miter}.pixel-icon .muni-node{animation:node-scan 2s steps(1,end) infinite}.pixel-icon .muni-node-2{animation-delay:.5s}.pixel-icon .muni-node-3{animation-delay:1s}.pixel-icon .muni-node-4{animation-delay:1.5s}.pixel-icon .muni-core{animation:core-compute 2s steps(2,end) infinite}.pixel-icon .lab-sample{animation:sample-scan 1.8s steps(2,end) infinite}.pixel-icon .vial-bubble{animation:bubble-rise 1.6s steps(4,end) infinite}.pixel-icon .vial-bubble-2{animation-delay:-.8s}.pixel-icon .microbe-dot{animation:microbe-divide 1.8s steps(2,end) infinite}.pixel-icon .microbe-dot-2{animation-delay:-.6s}.pixel-icon .microbe-dot-3{animation-delay:-1.2s}.pixel-icon .stanford-light{animation:window-light 2.4s steps(1,end) infinite}.pixel-icon .arena-node{animation:arena-scan 2.4s steps(1,end) infinite}.pixel-icon .arena-node-2{animation-delay:-.3s}.pixel-icon .arena-node-3{animation-delay:-.6s}.pixel-icon .arena-node-4{animation-delay:-.9s}.pixel-icon .arena-node-5{animation-delay:-1.2s}.pixel-icon .arena-node-6{animation-delay:-1.5s}.pixel-icon .arena-node-7{animation-delay:-1.8s}.pixel-icon .arena-node-8{animation-delay:-2.1s}.pixel-icon .arena-core{animation:arena-left 1.6s steps(2,end) infinite}.pixel-icon .arena-core-2{animation-name:arena-right}.pixel-icon .battle-bot-left{animation:battle-left 1.8s steps(3,end) infinite}.pixel-icon .battle-bot-right{animation:battle-right 1.8s steps(3,end) infinite}.pixel-icon .battle-spark{animation:battle-spark 1.8s steps(2,end) infinite}.pixel-icon .data-packet{animation:data-transfer 1.5s steps(4,end) infinite}.pixel-icon .data-packet-reverse{animation-direction:reverse;animation-delay:-.5s}.pixel-icon .robot-eye{animation:pixel-blink 2.4s steps(1,end) infinite}.pixel-icon .robot-signal{animation:signal-send 1.2s steps(2,end) infinite}.pixel-icon .helix-rung{animation:helix-scan 1.8s steps(1,end) infinite}.pixel-icon .helix-rung-2{animation-delay:.6s}.pixel-icon .helix-rung-3{animation-delay:1.2s}.pixel-icon .amino-node{animation:amino-scan 2s steps(1,end) infinite}.pixel-icon .amino-node-2{animation-delay:-.4s}.pixel-icon .amino-node-3{animation-delay:-.8s}.pixel-icon .amino-node-4{animation-delay:-1.2s}.pixel-icon .amino-node-5{animation-delay:-1.6s}.pixel-icon .protein-fold-a{stroke-dasharray:4 3;animation:protein-fold 1.8s steps(6,end) infinite}.pixel-icon .protein-fold-b{stroke-dasharray:3 3;animation:protein-fold 1.8s steps(6,end) infinite reverse}.pixel-icon .protein-core{animation:network-fire 1.4s steps(2,end) infinite}.pixel-icon .fold-arrow{animation:fold-arrow 1.8s steps(3,end) infinite}.pixel-icon .network-core{animation:network-fire 1.4s steps(2,end) infinite}.pixel-icon .network-node{animation:node-receive 1.4s steps(1,end) infinite}.pixel-icon .network-node-2{animation-delay:.35s}.pixel-icon .network-node-3{animation-delay:.7s}.pixel-icon .network-node-4{animation-delay:1.05s}.pixel-icon .nn-edge{animation:edge-flow 1.4s steps(2,end) infinite}.pixel-icon .chicken-head{animation:chicken-peck 2s steps(3,end) infinite;transform-origin:22px 16px}.pixel-icon .chicken-leg-a{animation:chicken-step 1s steps(2,end) infinite}.pixel-icon .chicken-leg-b{animation:chicken-step 1s steps(2,end) infinite reverse}.pixel-icon .target-arrow{animation:target-hit 1.8s steps(4,end) infinite}.pixel-icon .target-center{animation:target-flash 1.8s steps(1,end) infinite}.pixel-icon .strategy-agent-a{animation:strategy-top 2.8s steps(5,end) infinite}.pixel-icon .strategy-agent-b{animation:strategy-bottom 2.8s steps(5,end) infinite}.pixel-icon .strategy-path-a{animation:strategy-reward-a 2.8s steps(1,end) infinite}.pixel-icon .strategy-path-b{animation:strategy-reward-b 2.8s steps(1,end) infinite}.pixel-icon .city-packet{animation:city-cross 2s steps(5,end) infinite}.pixel-icon .dna-strand{stroke-dasharray:4 2;animation:dna-twist 1.5s steps(6,end) infinite}.pixel-icon .system-tool{animation:system-feed 2s steps(4,end) infinite}.pixel-icon .versus-left{animation:versus-left 1.8s steps(2,end) infinite}.pixel-icon .versus-right{animation:versus-right 1.8s steps(2,end) infinite}.pixel-icon .versus-flash{animation:target-flash 1.8s steps(1,end) infinite}.pixel-icon .speed-line{animation:speed-run 1s steps(4,end) infinite}.pixel-icon .speed-line-2{animation-delay:-.3s}.pixel-icon .speed-line-3{animation-delay:-.6s}.pixel-icon .lightning{animation:lightning-flash 1s steps(2,end) infinite}.pixel-icon .fep-arrow{animation:fep-cycle 2s steps(1,end) infinite}.pixel-icon .fep-arrow-2{animation-delay:-.5s}.pixel-icon .fep-arrow-3{animation-delay:-1s}.pixel-icon .fep-arrow-4{animation-delay:-1.5s}.pixel-icon .fep-node{animation:fep-node 1.6s steps(2,end) infinite}.pixel-icon .fep-node-2{animation-delay:-.8s}.pixel-icon .fep-energy{animation:lightning-flash 1s steps(2,end) infinite}.pixel-icon .onepot-bubble{animation:bubble-rise 1.4s steps(4,end) infinite}.pixel-icon .onepot-bubble-2{animation-delay:-.7s}.pixel-icon .onepot-molecule{animation:onepot-transfer 1.8s steps(5,end) infinite}.pixel-icon .terminal-cursor{animation:cursor-type 1s steps(1,end) infinite}.item-copy{min-width:0;display:flex;flex-direction:column;gap:0;line-height:1.35}.item-title{color:var(--ink);font-size:16px;font-weight:700;line-height:inherit;letter-spacing:-.018em;text-decoration:none;text-decoration-thickness:1px;text-underline-offset:2px}.list-item:hover .item-title,.list-item:focus-visible .item-title{text-decoration:underline}.work-heading{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}.writing-heading,.project-heading{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:10px}.work-date{color:var(--muted);font-size:14px;font-weight:400}.writing-date,.project-date{color:var(--muted);font-family:inherit;font-size:14px;font-style:italic;font-weight:400;letter-spacing:0;line-height:inherit;white-space:nowrap}.list-item:visited .item-title,.list-item.visited-link .item-title{color:#77756e}.list-item:active .item-title{color:#4c4a45}.list-item:focus-visible .item-title{outline:1px dotted #000000;outline-offset:2px}.item-description{margin-left:0;color:var(--muted);font-size:14px;line-height:inherit}@keyframes pixel-blink{0%,86%,to{opacity:1}87%,94%{opacity:0}}@keyframes node-scan{0%,24%,to{opacity:1}25%,49%{opacity:.2}}@keyframes core-compute{0%,to{fill:var(--green)}50%{fill:var(--yellow)}}@keyframes city-cross{0%,to{transform:translate(-2px)}50%{transform:translate(3px)}}@keyframes dna-twist{0%{stroke-dashoffset:0}to{stroke-dashoffset:12}}@keyframes system-feed{0%,to{transform:translate(0)}50%{transform:translate(2px)}}@keyframes sample-scan{0%,to{fill:var(--green)}50%{fill:var(--cyan)}}@keyframes bubble-rise{0%{transform:translateY(2px);opacity:0}30%,70%{opacity:1}to{transform:translateY(-5px);opacity:0}}@keyframes microbe-divide{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes window-light{0%,64%,to{fill:var(--yellow)}65%,84%{fill:var(--blue)}}@keyframes arena-scan{0%,15%,to{filter:brightness(1.35)}16%,99%{filter:brightness(.82)}}@keyframes arena-left{0%,to{fill:var(--ink)}50%{fill:var(--blue)}}@keyframes arena-right{0%,to{fill:var(--ink)}50%{fill:var(--red)}}@keyframes battle-left{0%,to{transform:translate(0)}45%,65%{transform:translate(2px)}}@keyframes battle-right{0%,to{transform:translate(0)}45%,65%{transform:translate(-2px)}}@keyframes battle-spark{0%,40%,75%,to{opacity:.3;fill:var(--yellow)}41%,74%{opacity:1;fill:var(--red)}}@keyframes data-transfer{0%{transform:translate(-5px);opacity:0}25%,75%{opacity:1}to{transform:translate(5px);opacity:0}}@keyframes signal-send{0%,to{opacity:.25}50%{opacity:1}}@keyframes helix-scan{0%,32%,to{fill:var(--yellow)}33%,65%{fill:var(--green)}}@keyframes amino-scan{0%,18%,to{filter:brightness(1.35)}19%,99%{filter:brightness(.8)}}@keyframes protein-fold{to{stroke-dashoffset:-14}}@keyframes fold-arrow{0%,to{transform:translate(-2px);opacity:.35}50%{transform:translate(2px);opacity:1}}@keyframes network-fire{0%,to{fill:var(--green)}50%{fill:var(--yellow)}}@keyframes node-receive{0%,24%,to{opacity:1}25%,49%{opacity:.25}}@keyframes edge-flow{0%,to{opacity:.25}50%{opacity:.9}}@keyframes chicken-peck{0%,65%,to{transform:rotate(0)}70%,85%{transform:rotate(28deg) translate(2px,1px)}}@keyframes chicken-step{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes target-hit{0%,20%{transform:translate(5px,-5px);opacity:0}55%,to{transform:translate(0);opacity:1}}@keyframes target-flash{0%,54%,to{fill:var(--yellow)}55%,72%{fill:var(--green)}}@keyframes strategy-top{0%,10%,55%,to{transform:translate(0);opacity:0}15%{opacity:1}45%,50%{transform:translate(10px,-9px);opacity:1}}@keyframes strategy-bottom{0%,45%,to{transform:translate(0);opacity:0}55%{opacity:1}85%,95%{transform:translate(10px,8px);opacity:1}}@keyframes strategy-reward-a{0%,49%,to{filter:brightness(1.35)}50%,99%{filter:brightness(.75)}}@keyframes strategy-reward-b{0%,49%,to{filter:brightness(.75)}50%,99%{filter:brightness(1.35)}}@keyframes versus-left{0%,to{transform:translate(0)}50%{transform:translate(2px)}}@keyframes versus-right{0%,to{transform:translate(0)}50%{transform:translate(-2px)}}@keyframes speed-run{0%{transform:translate(5px);opacity:0}40%{opacity:1}to{transform:translate(-4px);opacity:0}}@keyframes lightning-flash{0%,to{fill:var(--yellow)}50%{fill:var(--red)}}@keyframes fep-cycle{0%,24%,to{opacity:1}25%,99%{opacity:.25}}@keyframes fep-node{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes onepot-transfer{0%,15%{transform:translate(-2px);opacity:0}30%,70%{opacity:1}85%,to{transform:translate(8px);opacity:0}}@keyframes cursor-type{0%,49%{opacity:1}50%,to{opacity:0}}@media(max-width:600px){main{width:min(100% - 28px,760px)}.hero{padding:40px 0 28px}h1{font-size:46px}.section{padding-top:30px}.list-item{grid-template-columns:27px minmax(0,1fr);gap:7px;padding-block:1px}.pixel-icon{width:22.5px;height:22.5px}.pixel-icon svg{width:22.5px;height:22.5px}.item-description{margin-left:0;white-space:normal}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
