/* Animation System for Important Dates and Court Documents */

/* Base animation classes */
.animate-fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-fade-in.animate {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fade-in-up.animate {
    opacity: 1;
    transform: translateY(0);
}

.info-block-card {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.info-block-card.animate {
    opacity: 1;
    transform: translateY(0);
}

.home-summary {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 1s ease-out, transform 1s ease-out;
}

.home-summary.animate {
    opacity: 1;
    transform: translateY(0);
}

/* Important Dates specific animations */
.dates-card {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.dates-card.animate {
    opacity: 1;
    transform: translateY(0);
}

.dates-header {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.dates-header.animate {
    opacity: 1;
    transform: translateY(0);
}

.dates-table {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}

.dates-table.animate {
    opacity: 1;
    transform: translateY(0);
}

.date-row {
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}

.date-row.animate {
    opacity: 1;
    transform: translateY(0);
}

/* Court Documents specific animations */
.documents-card {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.documents-card.animate {
    opacity: 1;
    transform: translateY(0);
}

.documents-header {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.documents-header.animate {
    opacity: 1;
    transform: translateY(0);
}

.document-item {
    opacity: 0;
    transform: translateY(25px);
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

.document-item.animate {
    opacity: 1;
    transform: translateY(0);
}

/* Fallback for when animations don't work */
.animate-fade-in,
.dates-card,
.dates-header,
.dates-table,
.date-row,
.documents-card,
.documents-header,
.document-item {
    /* Ensure content is visible even without animations */
    will-change: opacity, transform;
}

/* Animation disabled state for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .animate-fade-in,
    .dates-card,
    .dates-header,
    .dates-table,
    .date-row,
    .documents-card,
    .documents-header,
    .document-item {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

/* Force visibility for debugging */
.debug-animations .animate-fade-in,
.debug-animations .dates-card,
.debug-animations .dates-header,
.debug-animations .dates-table,
.debug-animations .date-row,
.debug-animations .documents-card,
.debug-animations .documents-header,
.debug-animations .document-item {
    opacity: 1 !important;
    transform: none !important;
}
