:root{--ink:#000;--cream:#f5f1e8;--cream-deep:#eae3d2;--paper:#fff;--muted:#4a4a4a;--lime:#adff2f;--electric:#3b5bff;--cyan:#4fe3f0;--canary:#ffe600;--blush:#ff9fe5;--warn:#ff4a1c;--bg:var(--cream);--bg-deep:var(--cream-deep);--surface:var(--paper);--fg:var(--ink);--on-block:var(--ink);--border:3px;--radius:4px;--shadow:5px;--press:3px;--display:"Archivo Black","Arial Black",system-ui,sans-serif;--mono:"Space Mono",ui-monospace,"SF Mono",Menlo,monospace;--gutter:clamp(20px,5vw,72px);--max:1280px;--t-fast:90ms;--t-med:180ms;--t-slow:260ms;--t-page:420ms;--ease-out:cubic-bezier(0.2,0.9,0.25,1.12);--ease-in:cubic-bezier(0.5,0,0.9,0.4);--ease-soft:cubic-bezier(0.2,0.8,0.2,1)}.dark{--bg:#0a0a0a;--bg-deep:#000;--surface:#141414;--fg:var(--cream);--muted:#9a9a9a}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--mono);font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--display);font-weight:900;line-height:.94;letter-spacing:-.01em;margin:0;text-transform:none}h1{font-size:clamp(52px,12vw,148px)}h2{font-size:clamp(32px,5.5vw,68px)}h3{font-size:clamp(19px,2.4vw,28px)}li,p{margin:0;line-height:1.6;font-family:var(--mono)}a{color:inherit;text-decoration:none}.hi{background:var(--lime);color:var(--ink);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 .08em}.hi--blue{background:var(--electric);color:var(--paper)}.hi--canary{background:var(--canary)}.kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg)}.kicker,.mono{font-family:var(--mono);font-weight:700}.mono{font-size:12px}.muted{color:var(--muted)}.tag{display:inline-block;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:7px 10px;color:var(--ink);background:var(--surface);border:var(--border) solid var(--ink);border-radius:3px;box-shadow:3px 3px 0 var(--ink)}.tag--lime{background:var(--lime)}.tag--blue{background:var(--electric);color:var(--paper)}.tag--cyan{background:var(--cyan)}.tag--canary{background:var(--canary)}.card{background:var(--surface);border:var(--border) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow) var(--shadow) 0 var(--ink);padding:24px;color:var(--ink);transition:transform var(--t-slow) var(--ease-out),box-shadow var(--t-slow) var(--ease-out)}.card--live:hover,a.card:hover,button.card:hover{transform:translate(-2px,-2px);box-shadow:calc(var(--shadow) + 2px) calc(var(--shadow) + 2px) 0 var(--ink)}.card--lime{background:var(--lime)}.card--blue{background:var(--electric);color:var(--paper)}.card--cyan{background:var(--cyan)}.card--canary{background:var(--canary)}.card--blush{background:var(--blush)}.card--ink{box-shadow:var(--shadow) var(--shadow) 0 var(--lime)}.card--ink,.slab{background:var(--ink);color:var(--cream)}.slab{padding:18px 20px;border-radius:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:18px 26px;border:var(--border) solid var(--ink);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow) var(--shadow) 0 var(--ink);cursor:pointer;position:relative;overflow:hidden;text-align:center;transition:transform var(--t-slow) var(--ease-out),box-shadow var(--t-slow) var(--ease-out),background var(--t-med) linear}.btn:hover{transform:translate(-1px,-1px);box-shadow:calc(var(--shadow) + 1px) calc(var(--shadow) + 1px) 0 var(--ink)}.btn:active{transform:translate(var(--press),var(--press));box-shadow:calc(var(--shadow) - var(--press)) calc(var(--shadow) - var(--press)) 0 var(--ink);transition:transform var(--t-fast) var(--ease-in),box-shadow var(--t-fast) var(--ease-in)}.btn:focus-visible{outline:none;box-shadow:var(--shadow) var(--shadow) 0 var(--ink),0 0 0 3px var(--electric)}.btn:after{content:"";position:absolute;inset:0;background:var(--ink);opacity:0;transform:translateX(-101%);pointer-events:none}.btn:active:after{animation:wipe .38s var(--ease-out)}@keyframes wipe{0%{opacity:.14;transform:translateX(-101%)}to{opacity:0;transform:translateX(101%)}}.btn--primary{background:var(--lime)}.btn--blue{background:var(--electric);color:var(--paper)}.btn--canary{background:var(--canary)}.btn--warn{background:var(--warn);color:var(--paper)}.btn:disabled{border-color:var(--muted);color:var(--muted);background:var(--bg-deep);box-shadow:none;cursor:not-allowed}input,select,textarea{width:100%;font-family:var(--mono);font-size:14px;padding:15px;background:var(--surface);color:var(--ink);border:var(--border) solid var(--ink);border-radius:var(--radius)}input::placeholder,textarea::placeholder{color:var(--muted)}input:focus,select:focus,textarea:focus{outline:none;box-shadow:var(--shadow) var(--shadow) 0 var(--lime)}label{display:block;font-family:var(--mono);font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.section{padding:clamp(56px,9vw,120px) 0;border-top:var(--border) solid var(--ink)}.grid{display:grid;grid-gap:20px;gap:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.bento{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:20px;gap:20px;align-items:start}.b3{grid-column:span 3}.b4{grid-column:span 4}.b5{grid-column:span 5}.b6{grid-column:span 6}.b7{grid-column:span 7}.b8{grid-column:span 8}.b9{grid-column:span 9}.b12{grid-column:span 12}@media (max-width:860px){.b3,.b4{grid-column:span 6}.b5,.b6,.b7,.b8,.b9{grid-column:span 12}}@media (max-width:560px){.bento>*{grid-column:span 12!important}}.row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px}td,th{text-align:left;padding:13px 14px;border-bottom:var(--border) solid var(--ink);white-space:nowrap}th{font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--cream)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.94)}70%{opacity:1;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes blink{0%,60%{opacity:1}61%,to{opacity:.25}}@keyframes nudge{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.anim-rise{animation:rise var(--t-page) var(--ease-soft) both}.anim-pop{animation:pop var(--t-slow) var(--ease-out) both}.anim-slide{animation:slideIn var(--t-slow) var(--ease-out) both}.anim-grow{transform-origin:left center;animation:grow var(--t-page) var(--ease-soft) both}.anim-nudge{animation:nudge .26s var(--ease-soft)}.stagger>*{animation:rise var(--t-page) var(--ease-soft) both}.stagger>:first-child{animation-delay:0ms}.stagger>:nth-child(2){animation-delay:55ms}.stagger>:nth-child(3){animation-delay:.11s}.stagger>:nth-child(4){animation-delay:165ms}.stagger>:nth-child(5){animation-delay:.22s}.stagger>:nth-child(6){animation-delay:275ms}.stagger>:nth-child(7){animation-delay:.33s}.stagger>:nth-child(n+8){animation-delay:.38s}.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity var(--t-page) var(--ease-soft),transform var(--t-page) var(--ease-soft)}.js [data-reveal][data-shown=true]{opacity:1;transform:none}.btn--chip{padding:11px 16px;box-shadow:3px 3px 0 var(--ink)}.btn--chip:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.btn--chip:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn--chip[aria-pressed=true]{box-shadow:2px 2px 0 var(--ink)}a.link{position:relative;background-image:linear-gradient(var(--ink),var(--ink));background-repeat:no-repeat;background-position:0 100%;background-size:0 3px;transition:background-size var(--t-slow) var(--ease-soft)}a.link:hover{background-size:100% 3px}.nav-item{position:relative;transition:color var(--t-med) linear}.nav-item:before{content:"";position:absolute;inset:-4px -6px;background:var(--canary);border:3px solid var(--ink);border-radius:3px;transform:scaleY(0);transform-origin:bottom;transition:transform var(--t-slow) var(--ease-out);z-index:-1}.nav-item:hover:before,.nav-item[data-active=true]:before{transform:scaleY(1)}input,select,textarea{transition:box-shadow var(--t-slow) var(--ease-out),transform var(--t-slow) var(--ease-out)}input:focus,select:focus,textarea:focus{transform:translate(-1px,-1px)}.table-head{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:var(--border) solid var(--ink);flex-wrap:wrap}tbody .row-hover{transition:background var(--t-med) linear}tbody .row-hover:hover{background:var(--bg-deep)}.heat-cell{transition:transform var(--t-med) var(--ease-out)}.heat-cell:hover{transform:scale(1.35);position:relative;z-index:2;border-width:2px}.pulse{animation:blink 1.6s step-end infinite}@keyframes dot{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.typing span{display:inline-block;width:7px;height:7px;background:var(--ink);margin-right:5px;animation:dot 1s var(--ease-soft) infinite}.typing span:nth-child(2){animation-delay:.12s}.typing span:nth-child(3){animation-delay:.24s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.js [data-reveal]{opacity:1;transform:none}}body:has(.appshell)>footer,body:has(.appshell)>header{display:none}.appshell{min-height:100dvh;flex-direction:column;padding-bottom:calc(86px + env(safe-area-inset-bottom))}.appbar,.appshell{display:flex;background:var(--bg)}.appbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;align-items:center;gap:12px;padding:14px var(--gutter);border-bottom:var(--border) solid var(--ink)}.appmain{flex:1 1;padding:20px var(--gutter) 28px;max-width:760px;width:100%;margin:0 auto}.appnav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:1fr 1fr 1.4fr 1fr;grid-gap:0;gap:0;border-top:var(--border) solid var(--ink);padding-bottom:env(safe-area-inset-bottom)}.appnav,.appnav a{background:var(--surface)}.appnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:13px 6px 15px;text-decoration:none;color:var(--ink);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-right:var(--border) solid var(--ink);transition:background .14s linear}.appnav a:last-child{border-right:0}.appnav a[data-active=true]{background:var(--lime)}.appnav a[data-badge]:after{content:attr(data-badge);position:absolute;transform:translate(22px,-16px);background:var(--warn);color:#fff;border:2px solid var(--ink);border-radius:999px;font-size:9px;line-height:1;padding:3px 5px}.appnav a{position:relative}.bubbles{display:grid;grid-gap:12px;gap:12px;align-content:start}.bubble{max-width:78%;padding:12px 14px;border:var(--border) solid var(--ink);border-radius:4px;font-size:14.5px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.bubble--mine{justify-self:end;background:var(--lime)}.bubble--mine,.bubble--theirs{box-shadow:3px 3px 0 var(--ink)}.bubble--theirs{justify-self:start;background:var(--surface)}.rail{display:grid;grid-template-columns:repeat(20,1fr);grid-gap:3px;gap:3px}.rail span{height:16px;border:2px solid var(--ink);background:var(--bg-deep)}.rail span[data-done=true]{background:var(--electric)}@media (max-width:520px){.rail{grid-template-columns:repeat(10,1fr);gap:3px 3px}}@font-face{font-family:Archivo Black;src:url(/archivo-black.ttf) format("truetype");font-weight:900;font-display:swap}@font-face{font-family:Space Mono;src:url(/space-mono-400.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Space Mono;src:url(/space-mono-700.ttf) format("truetype");font-weight:700;font-display:swap}