/* Animation keyframes for enterprise UI components */
@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes rotateGradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

@keyframes pulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.7;
    }
}

@keyframes shimmer {
    0% {
        background-position: -200px 0;
    }
    100% {
        background-position: calc(200px + 100%) 0;
    }
}

/* KPI Card animations with staggered delays */
.kpi-card:nth-child(1) { 
    animation: slideInUp 0.6s ease-out 0.1s both; 
}

.kpi-card:nth-child(2) { 
    animation: slideInUp 0.6s ease-out 0.2s both; 
}

.kpi-card:nth-child(3) { 
    animation: slideInUp 0.6s ease-out 0.3s both; 
}

.kpi-card:nth-child(4) { 
    animation: slideInUp 0.6s ease-out 0.4s both; 
}

/* Responsive design media queries */
@media (max-width: 768px) {
    .header-content {
        flex-direction: column;
        gap: 1.5rem;
        text-align: center;
    }
    
    .kpi-grid {
        grid-template-columns: 1fr;
    }
    
    .analytics-grid,
    .map-analytics-grid {
        grid-template-columns: 1fr;
    }
    
    .page-title {
        font-size: 2.2rem;
    }
    
    .grid-toolbar,
    .location-toolbar {
        flex-direction: column;
        gap: 1rem;
    }
    
    .form-grid {
        grid-template-columns: 1fr;
    }
    
    .location-grid {
        grid-template-columns: 1fr;
    }
    
    .location-details {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .page-title {
        font-size: 1.8rem;
    }
    
    .kpi-card {
        padding: 1rem;
    }
    
    .metric-value {
        font-size: 1.8rem;
    }
} 