:root {
    --broccoli-green: #15803d;
    --broccoli-green-dark: #166534;
}

body {
    animation: page-fade-in 0.4s ease-out;
}

@keyframes page-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slide-up {
    from {
        opacity: 0;
        transform: translateY(16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-in {
    opacity: 0;
    animation: slide-up 0.5s ease-out forwards;
}

.card-lift {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card-lift:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px -8px rgba(0, 0, 0, 0.15);
}

.btn {
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.btn:hover {
    transform: translateY(-1px);
}

.row-hover {
    transition: background-color 0.15s ease;
}

.stat-number {
    font-variant-numeric: tabular-nums;
}
