/* Additional custom styles for the facial analysis app */
.card {
    border: none;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: box-shadow 0.15s ease-in-out;
}

.card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.progress-bar {
    transition: width 0.6s ease;
}

.emotion-bar, .race-bar, .personality-bar {
    margin-bottom: 0.75rem;
}

.emotion-bar:last-child, 
.race-bar:last-child, 
.personality-bar:last-child {
    margin-bottom: 0;
}

.trait-description {
    font-size: 0.875rem;
    color: var(--bs-secondary);
    margin-top: 0.25rem;
}

#imagePreview img {
    border: 2px solid var(--bs-border-color);
    transition: transform 0.2s ease;
}

#imagePreview img:hover {
    transform: scale(1.02);
}

.spinner-border {
    width: 2rem;
    height: 2rem;
}

/* Emotion color coding */
.emotion-happy { background-color: #28a745 !important; }
.emotion-sad { background-color: #6c757d !important; }
.emotion-angry { background-color: #dc3545 !important; }
.emotion-fear { background-color: #6f42c1 !important; }
.emotion-surprise { background-color: #fd7e14 !important; }
.emotion-disgust { background-color: #20c997 !important; }
.emotion-neutral { background-color: var(--bs-info) !important; }

/* Personality trait color coding */
.trait-openness { background-color: #e74c3c !important; }
.trait-conscientiousness { background-color: #3498db !important; }
.trait-extraversion { background-color: #f39c12 !important; }
.trait-agreeableness { background-color: #2ecc71 !important; }
.trait-neuroticism { background-color: #9b59b6 !important; }

/* Race/Ethnicity color coding */
.race-bar .progress-bar {
    background-color: var(--bs-info) !important;
}

/* Custom badge styles */
.badge {
    font-size: 0.875rem;
    font-weight: 500;
}

/* Responsive improvements */
@media (max-width: 768px) {
    .display-4 {
        font-size: 2rem;
    }
    
    .display-6 {
        font-size: 1.5rem;
    }
    
    #imagePreview img {
        max-height: 200px;
    }
}
