/* Table Animations - Specific to table row interactions
 * These classes apply the core animations to table elements.
 */

/* ========== TABLE ROW ANIMATIONS ========== */

/* Table row fade out animation */
.table-row-fade-out {
    animation: fadeOutSlide 0.4s ease-out forwards;
}

/* Table row fade in animation */
.table-row-fade-in {
    animation: fadeInUp 0.4s ease-out forwards;
}

/* Table row slide out to left */
.table-row-slide-out {
    animation: slideOutLeft 0.4s ease-out forwards;
}

/* Table row slide in from right */
.table-row-slide-in {
    animation: slideInRight 0.4s ease-out forwards;
}

/* Table row pulse for success states */
.table-row-pulse-success {
    animation: pulseSuccess 0.8s ease-out;
}

/* Table row pulse for update states */
.table-row-pulse-update {
    animation: pulseUpdate 0.8s ease-out;
}

/* ========== TABLE CONTAINER ANIMATIONS ========== */

/* Smooth container height changes */
.table-container-smooth {
    transition: max-height 0.3s ease-out;
    overflow: hidden;
}

/* Enhanced row hover states */
.table-row-hover {
    transition: background-color 0.2s ease, transform 0.1s ease;
}

.table-row-hover:hover {
    background-color: rgba(13, 202, 240, 0.05);
    transform: translateX(2px);
}

/* ========== LOADING STATES ========== */

/* Loading shimmer for table cells */
.table-cell-loading {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: loadingShimmer 1.5s infinite;
}

@keyframes loadingShimmer {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* ========== RESPONSIVE ANIMATIONS ========== */

/* Reduce animation intensity on mobile */
@media (max-width: 768px) {
    .table-row-fade-out,
    .table-row-slide-out {
        animation-duration: 0.2s;
    }

    .table-row-fade-in,
    .table-row-slide-in {
        animation-duration: 0.2s;
    }

    .table-row-hover:hover {
        transform: none; /* Remove transform on touch devices */
    }
}