/* =========================================================================
   NVL ICONS — reglas base de la iconografía (components/icon-sprite.php +
   components/icon.php). Inventario CERRADO de 20 iconos
   (docs/auditoria-diseno-flujo-compra.md §2.2-§2.3). Se registra como
   dependencia de nvl-components en inc/assets.php: no es global.

   DESVIACIÓN DOCUMENTADA (§2.1): el arte es un sprite SVG (<symbol> + <use>),
   no una fuente de iconos subconjuntada — el entorno no tiene herramientas
   de subsetting. El markup real es <svg class="nvl-icon nvl-icon--x">, no el
   <i> de la especificación; el contrato funcional (currentColor, tamaño 1em,
   clases .nvl-icon--*) es el mismo.
   ========================================================================= */

.nvl-icon {
    width: var(--nvl-icon-inline);
    height: var(--nvl-icon-inline);
    flex-shrink: 0;
    line-height: 1;
}

/* Ancho fijo en listas alineadas: filas con icono del resumen, para que el
   texto arranque en la misma vertical aunque los glifos tengan anchos
   distintos. */
.nvl-icon--fixed {
    width: var(--nvl-icon-fixed);
    height: var(--nvl-icon-fixed);
    text-align: center;
}

/* Icono de encabezado: título del resumen, bloque de atributos. */
.nvl-icon--lead {
    width: var(--nvl-icon-lead);
    height: var(--nvl-icon-lead);
}

/* El glifo HEREDA color. Sin esto el `fill` se queda en el negro inicial del
   SVG y ningún `color` del tema alcanza al icono: el contrato que este
   docblock declara —currentColor— nunca llegó a implementarse, y por eso los
   20 iconos se pintaban en #000 hicieran lo que hicieran sus contextos. */
.nvl-icon {
    fill: currentColor;
}
