@media (prefers-reduced-motion: reduce) {
    .g44-animate,
    .g44-animate[data-g44-animation],
    .g44-animate.is-visible {
        transition: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

/* ------- Podstawowy stan animacji ------- */
.g44-animate {
    opacity: 0;
    pointer-events: none;
    transition-property: opacity, transform;
    transition-duration: var(--g44-a-duration, 0.6s);
    transition-delay: var(--g44-a-delay, 0.1s);
    transition-timing-function: ease-out;
    will-change: opacity, transform;
    perspective: 1200px;
}
.g44-animate.is-visible {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1) rotate(0deg) !important;
    pointer-events: auto;
}

/* ------- Fade ------- */
[data-g44-animation="fade-in"] {
    transform: translateY(0);
}

[data-g44-animation="fade-up"] {
    transform: translateY(calc(var(--g44-a-px, 50px) * 1));
}
[data-g44-animation="fade-down"] {
    transform: translateY(calc(var(--g44-a-px, 50px) * -1));
}
[data-g44-animation="fade-left"] {
    transform: translateX(calc(var(--g44-a-px, 50px) * 1));
}
[data-g44-animation="fade-right"] {
    transform: translateX(calc(var(--g44-a-px, 50px) * -1));
}

/* ------- Zoom ------- */
[data-g44-animation="zoom-in"] {
    transform: scale(calc(1 / var(--g44-a-u, 1.2))); /* (1 / 1.2 = 0.833) */
    transform-origin: center;
}
[data-g44-animation="zoom-out"] {
    transform: scale(var(--g44-a-u, 1.1));
    transform-origin: center;
}

/* ------- Float ------- */
[data-g44-animation="float-up"] {
    transform: translateY(calc(var(--g44-a-px, 20px) * 1));
    transition-timing-function: cubic-bezier(.25,.46,.45,.94);
}
[data-g44-animation="float-up"].is-visible {
    transition-timing-function: cubic-bezier(.25,.46,.45,.94);
}

/* ------- Flip ------- */
[data-g44-animation="flip-in"] {
    transform: rotateX(calc(var(--g44-a-u, 65) * -1deg));
    transform-origin: top;
    transform-style: preserve-3d;
}

/* ------- Nowe ------- */
[data-g44-animation="rotate-in-up-left"] {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
}

[data-g44-animation="flip-elastic"] {
    transform-origin: top left;
    transform: rotateX(calc(var(--g44-a-u, 45) * -1deg))
               translateY(calc(var(--g44-a-px, 20px)));
    opacity: 0;
}
[data-g44-animation="flip-elastic"].is-visible {
    opacity: 1;
    transform: rotateX(0deg) translateY(0);
    transition-timing-function: cubic-bezier(.175,.885,.32,1.275);
}
/*
Alt:
transition-timing-function: cubic-bezier(.34,1.56,.64,1);
transition-timing-function: cubic-bezier(.68,-0.6,.32,1.6);
*/



/* ============== EDYTOR ==================*/
body.wp-admin .g44-animate,
.editor-styles-wrapper .g44-animate{
    opacity: 1;
    visibility: visible;
}
body.wp-admin .g44-anim-preview-start,
.editor-styles-wrapper .g44-anim-preview-start{
    opacity: 0;
    visibility: visible;
    transition: none;
}
body.wp-admin .editor-styles-wrapper .g44-anim-preview-run,
.editor-styles-wrapper .g44-anim-preview-run{
    transition: opacity var(--g44-a-duration, 0.6s) ease-out var(--g44-a-delay, 0ms), transform var(--g44-a-duration, 0.6s) ease-out var(--g44-a-delay, 0ms);
    opacity: 1;
}