/* Iconos Lucide */
[data-lucide],
svg.lucide {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2;
  fill: none;
  vertical-align: -0.2em;
  flex-shrink: 0;
  filter: drop-shadow(0 0 5px currentColor);
  transition: all 0.3s ease;
}

[data-lucide]:hover,
svg.lucide:hover {
  filter: drop-shadow(0 0 9px currentColor) drop-shadow(0 0 3px currentColor);
  transform: scale(1.1);
}

/* Tamaños por contexto */
button svg.lucide,
.fx-btn svg.lucide,
.bot-chip svg.lucide,
.np-tasa-badge svg.lucide,
.alm-badge svg.lucide,
.jucar-close svg.lucide,
.jucar-hint svg.lucide,
.np-modo-info svg.lucide,
.detalle-header svg.lucide,
.fp-card svg.lucide,
.picker-item svg.lucide,
.congelado svg.lucide,
#syncBar svg.lucide,
#estadoApp svg.lucide {
  width: 14px;
  height: 14px;
}

.nav-tab svg.lucide,
.nav-tabs svg.lucide {
  width: 20px;
  height: 20px;
  color: #94a3b8;
}

.nav-tab.active svg.lucide {
  color: #22d3ee;
}

.inicio-modulo-icono svg.lucide {
  width: 32px;
  height: 32px;
}

.inicio-modulo svg.lucide {
  color: var(--accent);
}

.inicio-modulo:nth-child(5n + 2) svg.lucide { color: #22d3ee; }
.inicio-modulo:nth-child(5n + 3) svg.lucide { color: #8b5cf6; }
.inicio-modulo:nth-child(5n + 4) svg.lucide { color: var(--warning); }
.inicio-modulo:nth-child(5n + 5) svg.lucide { color: var(--danger); }

.auth-logo svg.lucide,
.auth-brand svg.lucide {
  width: 40px;
  height: 40px;
  stroke: url(#lucide-grad-login);
}

.lic-ver { color: var(--accent); }
.lic-editar { color: #22d3ee; }
.lic-copiar { color: #8b5cf6; }
.lic-borrar { color: var(--danger); }

#estadoApp svg.lucide.lic-girar,
svg.lucide[data-lucide="loader"] {
  animation: lic-giro 1s linear infinite;
}

svg.lucide[data-lucide="circle"] {
  fill: currentColor;
}

@keyframes lic-giro {
  to { transform: rotate(360deg); }
}
