/* Loaded only by the active module (or its isolated admin preview). */
:root { --blisq-animations-ready: 1; }
.blisq-anim-pending:not(:focus-within) { opacity: 0; }
.blisq-anim-running {
  animation-name: var(--blisq-effect, blisq-fade);
  animation-duration: var(--blisq-duration, 600ms);
  animation-delay: var(--blisq-delay, 0ms);
  animation-timing-function: var(--blisq-easing, ease-out);
  animation-fill-mode: both;
  animation-iteration-count: 1;
  will-change: opacity;
}
@keyframes blisq-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes blisq-fade-up { from { opacity: 0; translate: 0 18px; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-fade-down { from { opacity: 0; translate: 0 -18px; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-fade-left { from { opacity: 0; translate: 18px 0; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-fade-right { from { opacity: 0; translate: -18px 0; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-slide-up { from { opacity: 0; translate: 0 32px; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-slide-down { from { opacity: 0; translate: 0 -32px; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-slide-left { from { opacity: 0; translate: 32px 0; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-slide-right { from { opacity: 0; translate: -32px 0; } to { opacity: 1; translate: 0 0; } }
@keyframes blisq-scale-in { from { opacity: 0; scale: .98; } to { opacity: 1; scale: 1; } }
@keyframes blisq-scale-up { from { opacity: 0; scale: .96; translate: 0 8px; } to { opacity: 1; scale: 1; translate: 0 0; } }
@keyframes blisq-zoom-in { from { opacity: 0; scale: .94; } to { opacity: 1; scale: 1; } }
@keyframes blisq-reveal-up { from { clip-path: inset(100% 0 0 0); } to { clip-path: inset(0); } }
@keyframes blisq-reveal-left { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0); } }
@keyframes blisq-reveal-right { from { clip-path: inset(0 0 0 100%); } to { clip-path: inset(0); } }
@keyframes blisq-blur-in { from { opacity: 0; filter: blur(4px); } to { opacity: 1; filter: blur(0); } }
@media (prefers-reduced-motion: reduce) {
  .blisq-anim-pending:not(:focus-within) { opacity: 1; }
  .blisq-anim-running { animation: none; will-change: auto; }
}
@media print {
  .blisq-anim-pending:not(:focus-within) { opacity: 1; }
  .blisq-anim-running { animation: none; will-change: auto; }
}
