    /* Componente de incertidumbre agregado */
    .componente-item {
      border: 1px solid var(--color-borde);
      border-radius: var(--radio-md);
      padding: var(--espacio-md);
      margin-bottom: var(--espacio-sm);
      background-color: var(--color-fondo);
    }

    .componente-item__header {
      display: flex;
      align-items: center;
      gap: var(--espacio-sm);
      margin-bottom: var(--espacio-xs);
    }

    .componente-item__nombre {
      flex: 1;
      font-size: 0.9rem;
    }

    .componente-item__desc {
      font-size: 0.8rem;
      color: var(--color-texto-suave);
      font-family: 'Courier New', monospace;
      margin-bottom: 4px;
    }

    .componente-item__u {
      font-size: 0.85rem;
      color: var(--color-texto-suave);
    }

    /* Badges Tipo A / Tipo B */
    .badge-tipo {
      font-size: 0.7rem;
      font-weight: 700;
      padding: 3px 8px;
      border-radius: 999px;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      flex-shrink: 0;
    }

    .badge-tipo--a {
      background-color: #DBEAFE;
      color: #1D4ED8;
    }

    .badge-tipo--b {
      background-color: #D1FAE5;
      color: #065F46;
    }

    /* Botón eliminar componente */
    .btn-eliminar-comp {
      background: none;
      border: none;
      cursor: pointer;
      color: var(--color-error);
      font-size: 1rem;
      padding: 4px 8px;
      border-radius: var(--radio-sm);
      transition: background-color 0.15s;
      flex-shrink: 0;
    }

    .btn-eliminar-comp:hover {
      background-color: #FEE2E2;
    }

    /* Lista de componentes */
    #lista-componentes {
      border: 1px solid var(--color-borde);
      border-radius: var(--radio-md);
      padding: var(--espacio-md);
      min-height: 80px;
      background-color: var(--color-fondo-card);
    }

    /* Tabla de desglose */
    .tabla-desglose {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.82rem;
      margin-top: var(--espacio-md);
    }

    .tabla-desglose th {
      background-color: var(--color-fondo-card);
      border: 1px solid var(--color-borde);
      padding: 8px 10px;
      text-align: left;
      font-weight: 600;
      font-size: 0.78rem;
      color: var(--color-texto-suave);
    }

    .tabla-desglose td {
      border: 1px solid var(--color-borde);
      padding: 8px 10px;
      color: var(--color-texto-suave);
      font-family: 'Courier New', monospace;
    }

    /* Cajas de resultado final */
    .resultado-gum {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: var(--espacio-md);
      margin-bottom: var(--espacio-lg);
    }

    .gum-card {
      background-color: var(--color-fondo-card);
      border: 1px solid var(--color-borde);
      border-radius: var(--radio-md);
      padding: var(--espacio-lg);
      text-align: center;
    }

    .gum-card--principal {
      border-top: 4px solid var(--color-acento);
      grid-column: 1 / -1;
    }

    .gum-card__label {
      font-size: 0.75rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--color-texto-suave);
      margin-bottom: var(--espacio-sm);
    }

    .gum-card__valor {
      font-size: 1.5rem;
      font-weight: 700;
      font-family: 'Courier New', monospace;
      color: var(--color-acento);
    }

    .gum-card__sub {
      font-size: 0.8rem;
      color: var(--color-texto-suave);
      margin-top: 4px;
    }

    .btn--secundario {
      background-color: var(--color-fondo-card);
      color: var(--color-texto);
      border: 1.5px solid var(--color-borde);
    }

    .btn--secundario:hover {
      background-color: var(--color-borde);
    }

    @media (max-width: 640px) {
      .resultado-gum { grid-template-columns: 1fr; }
      .gum-card--principal { grid-column: auto; }
    }
