Drag the curve, watch it race a linear square, and copy the easing as CSS, as a Tailwind arbitrary value or as a theme token.
.panel {
transition: transform 3000ms cubic-bezier(0.4, 0, 0.2, 1);
}
<div class="transition-transform duration-3000 ease-[cubic-bezier(0.4,0,0.2,1)]" />
@theme {
--ease-house: cubic-bezier(0.4, 0, 0.2, 1);
--duration-house: 3000ms;
}
Time runs left to right, progress bottom to top. A steep start means it leaves quickly and settles slowly, which is what makes an exit feel decisive and an entrance feel calm.
Because a curve is judged against something. Linear is the reference every reader already has, and the difference between the two is exactly what your easing is buying.
Pull a handle above the box and the value passes 1 before settling, which is how a spring reads. It is worth it on entrances and wrong on anything that has to line up with the pointer.