/**
 * Animations CSS — Animations CSS réutilisables (spin, fadeIn, slideDown)
 *
 * Keyframes et classes utilitaires d'animation partagées
 * par l'ensemble des composants du plugin.
 *
 * @file        cc-animations.css
 * @package     CaisseConnect
 * @subpackage  CSS\Core
 * @since       0.9
 * @version     1.3.2
 * @author      Microlibre <contact@microlibre.net>
 * @copyright   2026 Microlibre
 * @license     GPL-2.0+ https://www.gnu.org/licenses/gpl-2.0.html
 * @link        https://microlibre.net/caisse-connect
 */

/* ========================================
   ANIMATION DE ROTATION (Spinner)
   ======================================== */

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Classe utilitaire pour appliquer l'animation */
.cc-spin {
    animation: spin 1.5s linear infinite;
}

/* ========================================
   ANIMATION DE FONDU
   ======================================== */

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

.cc-fade-in {
    animation: fadeIn var(--cc-transition, 0.2s ease);
}

.cc-fade-out {
    animation: fadeOut var(--cc-transition, 0.2s ease);
}

/* ========================================
   ANIMATION DU BANDEAU STATUT
   ======================================== */

/* Fondu pendant la mise à jour */
.cc-bandeau-updating {
    opacity: 0.4;
    transition: opacity 0.2s ease;
}

/* Flash subtil après mise à jour */
@keyframes bandeauFlash {
    0%   { opacity: 0.4; }
    50%  { opacity: 1; }
    100% { box-shadow: none; }
}

.cc-bandeau-updated {
    animation: bandeauFlash 1s ease;
}
