/**
 * Icons Fix - Tamanhos Otimizados
 * Corrige ícones enormes
 */

/* Reset COMPLETO de todos os ícones */
* svg,
svg,
i,
span[class*="icon"],
div[class*="icon"] {
    width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
    line-height: 1 !important;
}

/* Ícones em KPI Cards */
.kpi-icon svg,
.kpi-icon-modern svg,
.stat-card-icon svg {
    width: 20px !important;
    height: 20px !important;
}

/* Ícones em Botões */
.btn svg,
.btn-primary svg,
.btn-secondary svg,
.btn-success svg,
.btn-danger svg {
    width: 16px !important;
    height: 16px !important;
}

/* Ícones em Service Cards */
.service-icon svg,
.quick-action-icon svg {
    width: 24px !important;
    height: 24px !important;
}

/* Ícones em Health Cards */
.health-status-icon svg,
.metric-icon svg {
    width: 24px !important;
    height: 24px !important;
}

/* Ícones no Header/Avatar */
.user-avatar {
    font-size: 14px !important;
}

/* Ícones de Status Dot */
.status-dot {
    width: 10px !important;
    height: 10px !important;
}

/* Ícones em Badges */
.badge svg {
    width: 14px !important;
    height: 14px !important;
}

/* Ícones em Dropdown */
.user-dropdown-icon {
    font-size: 10px !important;
}

.dropdown-item-icon {
    font-size: 18px !important;
    width: 20px !important;
    height: 20px !important;
}

/* Logo no Header */
.logo-svg svg {
    width: auto !important;
    height: 32px !important;
    max-width: 180px !important;
}

/* Ícones pequenos */
.icon-sm svg {
    width: 14px !important;
    height: 14px !important;
}

/* Ícones grandes (quando necessário) */
.icon-lg svg {
    width: 28px !important;
    height: 28px !important;
}

/* Empty State Icons */
.empty-state-icon {
    font-size: 48px !important;
}

/* Fix para qualquer ícone que escape */
.card svg:not(.logo-svg svg),
.modal svg,
.table svg {
    max-width: 20px !important;
    max-height: 20px !important;
}

/* Emoji/Unicode icons */
.kpi-card-modern::before,
.stat-card::before,
*::before,
*::after {
    font-size: inherit !important;
}

/* Fix específico para cards com emoji */
.kpi-label::before,
.stat-card-label::before {
    font-size: 16px !important;
}

/* Normalizar TODOS os emojis como texto */
h1::before, h2::before, h3::before, h4::before, h5::before, h6::before,
button::before, a::before, span::before, div::before {
    display: inline !important;
    width: auto !important;
    height: auto !important;
}

/* Forçar tamanho máximo em QUALQUER elemento com ícone */
[class*="icon"] svg,
[class*="Icon"] svg,
[id*="icon"] svg,
[id*="Icon"] svg {
    width: 20px !important;
    height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
}

/* Filtros e botões de ação */
button svg,
a svg,
.btn svg {
    width: 16px !important;
    height: 16px !important;
}

/* Cards de estatística */
.card svg {
    width: 20px !important;
    height: 20px !important;
}

/* Emojis inline (📹, 📊, etc) - deixar natural */
.emoji,
[data-emoji],
span:not([class]) {
    font-size: inherit !important;
    width: auto !important;
    height: auto !important;
}

