Entry interaction studyForblune

The blink was the door.

While you held it, the eye tracked you, narrowed, and dilated. One value moves between 0 and 1 for as long as the pointer is down, and every visible state reads from that single number — which is why letting go early needed no special case. It simply runs backwards, more slowly than it ran forward. Open the inspector and drag the value yourself.

Hold to open
900 ms filled, linear intent, eased render
Release decay
1.6× the hold, ease-out — a retreat should feel unhurried
Lids closing
200 ms, ease-in
Lids opening
340 ms, ease-out — the content is already there behind them
Pupil
r 11.00 → 15.40, travel ±13 of 220 viewBox units
Cursor
Ring lerps at 0.18, pupil dot tracks exactly, dot dilates with the eye
Input
Pointer Events — mouse, touch and pen on one path; Space or Enter to hold
Reduced motion
No tracking, no blink, no cursor lag; the gate opens on press
Weight
One HTML file, typeface embedded, no libraries, no external requests
Built as a working answer, not a mockup.