/* Colección de iconos original de CofraSaaS. El dibujo hereda el color del
   texto y no necesita JavaScript, fuentes externas ni una librería de iconos. */
.cofrade-icon {
    display: inline-block;
    width: 1.25em;
    height: 1.25em;
    flex: 0 0 auto;
    overflow: visible;
    color: inherit;
    vertical-align: -0.22em;
    shape-rendering: geometricPrecision;
}

.cofrade-icon--sm { width: 1em; height: 1em; }
.cofrade-icon--md { width: 1.5em; height: 1.5em; }
.cofrade-icon--lg { width: 2em; height: 2em; }

.nav-item > .cofrade-icon {
    width: 20px;
    height: 20px;
    color: rgba(255, 255, 255, .7);
    transition: color .18s ease, transform .18s ease;
}

.nav-item:hover > .cofrade-icon,
.nav-item.active > .cofrade-icon {
    color: var(--color-dorado, #c9a84c);
    transform: translateY(-1px);
}

.stat-icon .cofrade-icon { width: 24px; height: 24px; }
.btn .cofrade-icon { width: 1.05em; height: 1.05em; }
.header-btn .cofrade-icon { width: 19px; height: 19px; }
.metric-kpi-icon .cofrade-icon { width: 24px; height: 24px; }
.empty-state .cofrade-icon { width: 48px; height: 48px; }

/* Los controles universales conservan Lucide, con el mismo peso de línea. */
.lucide { stroke-width: 1.85; }

@media (prefers-reduced-motion: reduce) {
    .nav-item > .cofrade-icon { transition: none; }
}
