@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes blink{50%{opacity:0}}@keyframes ring{0%{opacity:.7;transform:scale(.85)}to{opacity:0;transform:scale(1.4)}}.bob{animation:6s ease-in-out infinite bob}.pulse{animation:2s infinite pulse}.caret{animation:1s steps(2,end) infinite blink}.ring:after{animation:2s ease-out infinite ring}@media (prefers-reduced-motion:reduce){.bob,.ring:after{animation:none}}.rotator-word{transition:opacity .4s,transform .4s;display:inline-block}.rotator-word.out{opacity:0;transform:translateY(-12px)}.demo-card{transition:opacity .45s,transform .45s}.demo-card.dim{opacity:.42}.demo-card.appear{opacity:0;transform:translateY(-10px)}.demo-card.appear.show{opacity:1;transform:translateY(0)}.demo-answer{opacity:0;transition:opacity .45s,transform .45s;transform:translateY(8px)}.demo-answer.show{opacity:1;transform:translateY(0)}.demo-step[data-on=true]{background:var(--bg-soft);box-shadow:inset 0 0 0 1px var(--ink-hair)}.demo-step[data-on=true] .step-number{color:var(--mineral)}.demo-step[data-on=true] .step-title{color:var(--ink)}.demo-step .step-desc{opacity:0;max-height:0;transition:max-height .35s,opacity .35s,margin .35s;overflow:hidden}.demo-step[data-on=true] .step-desc{opacity:1;max-height:60px}.nav-blur{background:color-mix(in oklab,var(--bg)86%,transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px)}.footer-link{color:var(--ink-soft)}.footer-link:hover{color:var(--ink)}
