open-props
Version:
<div align="center">
228 lines (225 loc) • 3.95 kB
CSS
@import '../media-queries.css';
:where(:root) {
--animation-fade-in: fade-in 0.5s var(--ease-3);
--animation-fade-in-bloom: fade-in-bloom 2s var(--ease-3);
--animation-fade-out: fade-out 0.5s var(--ease-3);
--animation-fade-out-bloom: fade-out-bloom 2s var(--ease-3);
--animation-scale-up: scale-up 0.5s var(--ease-3);
--animation-scale-down: scale-down 0.5s var(--ease-3);
--animation-slide-out-up: slide-out-up 0.5s var(--ease-3);
--animation-slide-out-down: slide-out-down 0.5s var(--ease-3);
--animation-slide-out-right: slide-out-right 0.5s var(--ease-3);
--animation-slide-out-left: slide-out-left 0.5s var(--ease-3);
--animation-slide-in-up: slide-in-up 0.5s var(--ease-3);
--animation-slide-in-down: slide-in-down 0.5s var(--ease-3);
--animation-slide-in-right: slide-in-right 0.5s var(--ease-3);
--animation-slide-in-left: slide-in-left 0.5s var(--ease-3);
--animation-shake-x: shake-x 0.75s var(--ease-out-5);
--animation-shake-y: shake-y 0.75s var(--ease-out-5);
--animation-spin: spin 2s linear infinite;
--animation-ping: ping 5s var(--ease-out-3) infinite;
--animation-blink: blink 1s var(--ease-out-3) infinite;
--animation-float: float 3s var(--ease-in-out-3) infinite;
--animation-bounce: bounce 2s var(--ease-squish-2) infinite;
--animation-pulse: pulse 2s var(--ease-out-3) infinite;
}
@keyframes fade-in {
to {
opacity: 1;
}
}
@keyframes fade-in-bloom {
0% {
opacity: 0;
filter: brightness(1) blur(20px);
}
10% {
opacity: 1;
filter: brightness(2) blur(10px);
}
100% {
opacity: 1;
filter: brightness(1) blur(0);
}
}
@keyframes fade-out {
to {
opacity: 0;
}
}
@keyframes fade-out-bloom {
100% {
opacity: 0;
filter: brightness(1) blur(20px);
}
10% {
opacity: 1;
filter: brightness(2) blur(10px);
}
0% {
opacity: 1;
filter: brightness(1) blur(0);
}
}
@keyframes scale-up {
to {
transform: scale(1.25);
}
}
@keyframes scale-down {
to {
transform: scale(0.75);
}
}
@keyframes slide-out-up {
to {
transform: translateY(-100%);
}
}
@keyframes slide-out-down {
to {
transform: translateY(100%);
}
}
@keyframes slide-out-right {
to {
transform: translateX(100%);
}
}
@keyframes slide-out-left {
to {
transform: translateX(-100%);
}
}
@keyframes slide-in-up {
from {
transform: translateY(100%);
}
}
@keyframes slide-in-down {
from {
transform: translateY(-100%);
}
}
@keyframes slide-in-right {
from {
transform: translateX(-100%);
}
}
@keyframes slide-in-left {
from {
transform: translateX(100%);
}
}
@keyframes shake-x {
0%,
100% {
transform: translateX(0%);
}
20% {
transform: translateX(-5%);
}
40% {
transform: translateX(5%);
}
60% {
transform: translateX(-5%);
}
80% {
transform: translateX(5%);
}
}
@keyframes shake-y {
0%,
100% {
transform: translateY(0%);
}
20% {
transform: translateY(-5%);
}
40% {
transform: translateY(5%);
}
60% {
transform: translateY(-5%);
}
80% {
transform: translateY(5%);
}
}
@keyframes spin {
to {
transform: rotate(1turn);
}
}
@keyframes ping {
90%,
100% {
transform: scale(2);
opacity: 0;
}
}
@keyframes blink {
0%,
100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
@keyframes float {
50% {
transform: translateY(-25%);
}
}
@keyframes bounce {
25% {
transform: translateY(-20%);
}
40% {
transform: translateY(-3%);
}
0%,
60%,
100% {
transform: translateY(0);
}
}
@keyframes pulse {
50% {
transform: scale(0.9, 0.9);
}
}
@media (--OSdark) {
@keyframes fade-in-bloom {
0% {
opacity: 0;
filter: brightness(1) blur(20px);
}
10% {
opacity: 1;
filter: brightness(0.5) blur(10px);
}
100% {
opacity: 1;
filter: brightness(1) blur(0);
}
}
}
@media (--OSdark) {
@keyframes fade-out-bloom {
100% {
opacity: 0;
filter: brightness(1) blur(20px);
}
10% {
opacity: 1;
filter: brightness(0.5) blur(10px);
}
0% {
opacity: 1;
filter: brightness(1) blur(0);
}
}
}