/* JMN - Estilos customizados */

/* Smooth scrolling */
html { scroll-behavior: smooth; }

/* Avatar placeholder com iniciais */
.avatar-initials {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #1B6B3A;
    background: linear-gradient(135deg, #E8F5EC 0%, #d1ecd9 100%);
}

/* Card hover effect */
.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-hover:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.1);
}

/* Count-up animation */
@keyframes countUp {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.count-animate {
    animation: countUp 0.6s ease-out forwards;
}

/* Fade in */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.fade-in {
    animation: fadeIn 0.5s ease-out forwards;
}

/* Stagger children animation */
.stagger-children > * {
    opacity: 0;
    animation: fadeIn 0.4s ease-out forwards;
}
.stagger-children > *:nth-child(1) { animation-delay: 0.05s; }
.stagger-children > *:nth-child(2) { animation-delay: 0.1s; }
.stagger-children > *:nth-child(3) { animation-delay: 0.15s; }
.stagger-children > *:nth-child(4) { animation-delay: 0.2s; }
.stagger-children > *:nth-child(5) { animation-delay: 0.25s; }
.stagger-children > *:nth-child(6) { animation-delay: 0.3s; }
.stagger-children > *:nth-child(n+7) { animation-delay: 0.35s; }

/* Map tooltip */
.map-tooltip {
    pointer-events: none;
    transition: opacity 0.2s ease;
}

/* Brasil SVG states */
.brasil-state {
    cursor: pointer;
    transition: fill 0.2s ease, stroke 0.2s ease;
    stroke: #fff;
    stroke-width: 1;
}
.brasil-state:hover {
    stroke: #1B6B3A;
    stroke-width: 2;
    filter: brightness(0.9);
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #999; }

/* Print */
@media print {
    .no-print { display: none !important; }
    .card-hover { break-inside: avoid; }
}
