:root{--ink:#15121f;--ink-deep:#0e0b16;--panel:#1f1a2e;--panel-hover:#2a2440;--line:#3a3355;--line-soft:#2a2440;--line-light:#e2ddf0;--pink:#ff4f8b;--lime:#c8f560;--lime-soft:#e9fbc9;--violet:#a78bfa;--lilac:#f1ecff;--amber:#ffb547;--on-dark:#d9d4ea;--on-dark-muted:#a59fbf;--text:#15121f;--text-soft:#4a4458;--text-label:#5b5470;--display:"Unbounded", system-ui, sans-serif;--body:"IBM Plex Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--wrap:1240px;--ease:cubic-bezier(.16,1,.3,1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:24px}body{font-family:var(--body);color:var(--text);background:#fff;margin:0;line-height:1.5;overflow-x:hidden}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{background:var(--lime);color:var(--ink);z-index:100;border-radius:8px;padding:10px 14px;font-weight:700;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}:focus-visible{outline:3px solid var(--pink);outline-offset:3px}.dark{background:var(--ink);color:#fff}.dark :focus-visible{outline-color:var(--lime)}.display{font-family:var(--display);letter-spacing:-.05em;margin:0;font-weight:900;line-height:.95}.h-section{overflow-wrap:break-word;font-size:clamp(38px,5vw,72px)}.mono{font-family:var(--mono)}.eyebrow{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--lime);margin:0;font-size:14px;font-weight:700}.outline{color:#0000;-webkit-text-stroke:2px var(--pink)}.arrow{transition:transform .3s var(--ease);display:inline-block}a:hover .arrow,.card:hover .arrow,.row:hover .arrow,.rel:hover .arrow{transform:translate(6px)}.pill{border-radius:999px;align-items:center;gap:10px;min-height:54px;padding:0 24px;font-weight:700;transition:transform .15s,background-color .2s;display:inline-flex}.pill:hover{transform:translateY(-2px)}.pill-pink{background:var(--pink);color:var(--ink)}.pill-lime{background:var(--lime);color:var(--ink)}.pill-ink{background:var(--ink);color:#fff}.pill-ghost{border:2px solid #4a4366}.logo{font-family:var(--mono);letter-spacing:-.02em;flex:none;font-size:22px;font-weight:700}.logo .slash{color:var(--pink)}.logo .cursor,.footer-logo .cursor{color:var(--lime)}@keyframes morph{0%,to{border-radius:42% 58% 63% 37%/41% 44% 56% 59%;transform:rotate(0)translate(0)}33%{border-radius:63% 37% 38% 62%/55% 61% 39% 45%;transform:rotate(60deg)translate(20px,-14px)}66%{border-radius:36% 64% 52% 48%/62% 38%;transform:rotate(130deg)translate(-16px,12px)}}@keyframes lift{0%{translate:0 50px}to{translate:none}}.lift-in{animation:lift 1s var(--ease) both;display:inline-block}@keyframes rise{0%{opacity:0;translate:0 60px}to{opacity:1;translate:none}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes blinkblock{50%{opacity:0}}@keyframes sheetIn{0%{opacity:0;transform:translateY(-10px)scale(.98)}to{opacity:1;transform:none}}@keyframes linkIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.blob{pointer-events:none;border-radius:42% 58% 63% 37%/41% 44% 56% 59%;animation:16s ease-in-out infinite morph}.rise{animation:rise 1s var(--ease) both}.cursor{animation:1s step-end infinite blinkblock}@supports (animation-timeline:view()){.reveal{animation:linear both rise}body .reveal{animation-timeline:view();animation-range:entry cover 30%}}.site-header{z-index:20;position:relative}.site-header .bar{align-items:center;gap:28px;padding-top:22px;padding-bottom:22px;display:flex}.navlinks{gap:4px;margin-left:auto;font-size:15px;font-weight:500;display:flex}.navlinks a{border-radius:999px;padding:10px 14px;transition:background-color .2s}.navlinks a:hover,.navlinks a[aria-current]{background:var(--panel-hover)}.navcta{flex:none;min-height:48px;padding:0 22px;font-size:15px}.menubtn{background:var(--lime);width:50px;height:50px;color:var(--ink);cursor:pointer;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;display:none}.menubtn .i-close,.site-header[data-open] .menubtn .i-open{display:none}.site-header[data-open] .menubtn .i-close{display:block}.sheet{background:var(--panel);border:1px solid var(--line);color:#fff;border-radius:26px;padding:10px;display:none;position:absolute;top:100%;left:16px;right:16px;box-shadow:0 40px 80px -30px #000000b3}.sheet a{font-family:var(--display);border-radius:16px;justify-content:space-between;padding:16px 18px;font-size:22px;font-weight:800;display:flex}.sheet a:not(.sheetcta){transition:background-color .2s}.sheet a:not(.sheetcta):hover{background-color:var(--panel-hover)}.sheet .sheetcta{background:var(--lime);color:var(--ink);text-align:center;font-family:var(--body);border-radius:999px;margin-top:8px;padding:18px;font-size:17px;font-weight:700;display:block}@media (width<=900px){.navlinks,.navcta{display:none!important}.menubtn{margin-left:auto;display:inline-flex}.site-header[data-open] .sheet{animation:sheetIn .35s var(--ease) both;display:block}.site-header[data-open] .sheet a{animation:linkIn .4s var(--ease) both}.site-header[data-open] .sheet a:nth-child(2){animation-delay:40ms}.site-header[data-open] .sheet a:nth-child(3){animation-delay:80ms}.site-header[data-open] .sheet a:nth-child(4){animation-delay:.12s}.site-header[data-open] .sheet a:nth-child(5){animation-delay:.16s}}.page-hero{position:relative;overflow:clip}.page-hero .blob{position:absolute}.page-hero-copy{z-index:2;padding-top:40px;padding-bottom:90px;position:relative}@media (width<=700px){.blob.blob-a{width:220px!important;height:220px!important;top:-60px!important;right:-110px!important}.blob.blob-b{width:150px!important;height:150px!important;bottom:-90px!important;right:-50px!important}}.page-hero h1{max-width:980px;margin:18px 0 0;font-size:clamp(40px,6vw,88px);line-height:.98}.page-hero .lede{max-width:560px;color:var(--on-dark);margin:22px 0 0;font-size:18px;line-height:1.6}.crumbs{font-family:var(--mono);color:var(--on-dark);flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.crumbs li+li:before{content:"/";margin-right:10px}.crumbs li:last-child a{color:var(--lime)}.crumbs a:hover{text-underline-offset:3px;text-decoration:underline}.post-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:24px;display:grid}.card{border:2px solid var(--ink);transition:transform .5s var(--ease), box-shadow .5s;background:#fff;border-radius:26px;flex-direction:column;display:flex;overflow:hidden}.card:hover{transform:translateY(-10px);box-shadow:0 30px 60px -30px #15121f8c}.card-media{border-bottom:2px solid var(--ink);justify-content:center;align-items:center;height:200px;display:flex;position:relative;overflow:hidden}.card-media img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease);position:absolute;inset:0}.card:hover .card-media img{transform:scale(1.05)}.code{background:var(--ink);color:var(--lime);font-family:var(--mono);white-space:nowrap;transition:transform .6s var(--ease);border-radius:14px;padding:14px 18px;font-size:16px;font-weight:700;position:relative}.card:hover .code{transform:scale(1.05)}.card-media img+.code{border-radius:10px;padding:8px 12px;font-size:13px;position:absolute;bottom:16px;left:16px}.card-body{flex-direction:column;flex:1;gap:14px;padding:24px;display:flex}.card-cat{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-label);font-size:13px;font-weight:700}.card-title{font-family:var(--display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700;line-height:1.2}.card-excerpt{color:var(--text-soft);margin:0;font-size:16px;line-height:1.55}.card-cta{align-items:center;gap:8px;margin-top:auto;font-weight:700;display:inline-flex}.pagination{flex-wrap:wrap;justify-content:center;gap:8px;margin:56px 0 0;padding:0;list-style:none;display:flex}.pagination a,.pagination span{border:2px solid var(--ink);min-width:48px;height:48px;font-family:var(--mono);border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-weight:700;transition:background-color .2s;display:inline-flex}.pagination a:hover{background:var(--lilac)}.pagination [aria-current]{background:var(--ink);color:#fff}.chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chips a{border:2px solid var(--line);border-radius:999px;padding:10px 16px;font-size:15px;font-weight:700;transition:background-color .2s,color .2s,border-color .2s;display:inline-block}.chips a:hover,.chips a[aria-current]{background:var(--lime);border-color:var(--lime);color:var(--ink)}.prose{color:var(--text);overflow-wrap:break-word;font-size:19px;line-height:1.75}.prose>:first-child{margin-top:0}.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{font-family:var(--display);letter-spacing:-.03em;line-height:1.12}.prose h2{margin:64px 0 16px;font-size:clamp(26px,3vw,34px);font-weight:800}.prose h3{margin:44px 0 12px;font-size:24px;font-weight:800}.prose h4,.prose h5,.prose h6{letter-spacing:-.01em;margin:32px 0 10px;font-size:19px;font-weight:700}.prose h2 strong,.prose h3 strong,.prose h4 strong{font-weight:inherit}.prose p{margin:0 0 20px}.prose a{text-decoration:underline 3px;text-decoration-color:var(--pink);text-underline-offset:4px;transition:text-decoration-color .2s}.prose a:hover{text-decoration-color:var(--ink)}.prose ul,.prose ol{margin:0 0 20px;padding-left:1.3em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--pink);font-weight:700}.prose img{border:2px solid var(--ink);border-radius:22px;margin:32px 0;display:block}.prose figure{margin:32px 0}.prose figcaption{color:var(--text-label);text-align:center;margin-top:10px;font-size:14px}.prose blockquote{border-left:6px solid var(--pink);background:var(--lilac);border-radius:0 20px 20px 0;margin:32px 0;padding:20px 24px}.prose blockquote p:last-child{margin-bottom:0}.prose code{background:var(--lilac);font-family:var(--mono);border-radius:6px;padding:2px 6px;font-size:.88em}.prose pre{background:var(--ink-deep);color:#fff;border-radius:18px;padding:20px;font-size:15px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose table{border-collapse:separate;border-spacing:0;border:2px solid var(--ink);border-radius:18px;width:100%;margin:32px 0;font-size:16px;display:block;overflow:auto hidden}.prose th,.prose td{border-bottom:1px solid var(--line-light);text-align:left;vertical-align:top;padding:12px 14px}.prose tr:last-child td{border-bottom:0}.prose th,.prose tr:first-child td strong{font-family:var(--display);font-weight:700}.prose th{background:var(--ink);color:#fff}.prose iframe{aspect-ratio:16/9;border:2px solid var(--ink);background:var(--ink-deep);border-radius:22px;width:100%;max-width:100%;height:auto;margin:32px 0;display:block}.prose hr{border:0;border-top:2px solid var(--line-light);margin:40px 0}.site-footer{padding:80px 0 40px}.footer-logo{font-family:var(--mono);letter-spacing:-.06em;margin:0;font-size:clamp(56px,12vw,180px);font-weight:700;line-height:.9}.footer-logo .slash{color:var(--pink)}.footer-row{border-top:1px solid var(--line);color:var(--on-dark);flex-wrap:wrap;justify-content:space-between;gap:24px;margin-top:50px;padding-top:28px;font-size:15px;display:flex}.footer-row nav{flex-wrap:wrap;gap:22px;display:flex}.footer-row a:hover{color:#fff;text-underline-offset:4px;text-decoration:underline}.footer-note{max-width:720px;color:var(--on-dark-muted);margin:24px 0 0;font-size:13px;line-height:1.6}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}html{scroll-behavior:auto}}@media (width<=520px){.wrap{padding:0 16px}.site-header .bar{gap:12px}}
