@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes pop{from{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:none}}
@keyframes shimmer{to{background-position:-100% 0}}
@keyframes slideUp{from{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes viewIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}

.view:not(.hidden){animation:viewIn .45s var(--ease)}
.pop-in{animation:pop .5s var(--ease)}
.card,.rule,.surface.block{animation:rise .55s var(--ease) both}
.grid .card:nth-child(1){animation-delay:.02s}.grid .card:nth-child(2){animation-delay:.06s}.grid .card:nth-child(3){animation-delay:.10s}
.grid .card:nth-child(4){animation-delay:.14s}.grid .card:nth-child(5){animation-delay:.18s}.grid .card:nth-child(6){animation-delay:.22s}
.grid .card:nth-child(n+7){animation-delay:.26s}
.edit-main>.surface:nth-child(2){animation-delay:.08s}.edit-main>.surface:nth-child(3){animation-delay:.16s}
.rule.leaving{animation:none;transition:opacity .25s,transform .25s;opacity:0;transform:scale(.96)}
.skeleton{animation:shimmer 1.3s linear infinite}
.toast:not(.hidden){animation:slideUp .35s var(--ease)}
.polish:not(.hidden){animation:pop .3s var(--ease)}
.k{animation:pop .25s var(--ease)}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
