XML 35 R56.htm IDEA: XBRL DOCUMENT v2.4.1.9
STOCK OPTIONS (Details 1) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Summary of information about options outstanding    
Number Outstanding 2,864,189us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions 2,467,046us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
Options Exercisable 1,376,754us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions 1,174,885us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
Granted $ 592,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice $ 2.36us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
Exercised $ 107,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice $ 1.38us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
Vested 381,369us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares  
Cancelled (72,500)BVX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsCancelledInPeriodWeightedAverageExercisePricS  
Forfeited $ (15,357)us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice $ 3.13us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
Exercise Price 2.13 [Member]    
Summary of information about options outstanding    
Number Outstanding    125,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceOneMember
Options Exercisable    125,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceOneMember
Granted     
Exercised $ 87,500us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceOneMember
 
Vested     
Cancelled (37,500)BVX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsCancelledInPeriodWeightedAverageExercisePricS
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceOneMember
 
Forfeited     
Exercise Price 2.25 [Member]    
Summary of information about options outstanding    
Number Outstanding 309,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwoMember
319,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwoMember
Weighted Average Remaining Contractual Life 1 year  
Options Exercisable 309,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwoMember
319,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwoMember
Granted     
Exercised $ 9,500us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwoMember
 
Vested     
Forfeited     
Exercise Price 2.41 [Member]    
Summary of information about options outstanding    
Number Outstanding    30,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThreeMember
Options Exercisable    30,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThreeMember
Granted     
Exercised $ 10,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThreeMember
 
Vested     
Cancelled (20,000)BVX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsCancelledInPeriodWeightedAverageExercisePricS
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThreeMember
 
Forfeited     
Exercise Price 2.93 [Member]    
Summary of information about options outstanding    
Number Outstanding 35,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourMember
35,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourMember
Weighted Average Remaining Contractual Life 1 year  
Options Exercisable 35,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourMember
35,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 2.95 [Member]    
Summary of information about options outstanding    
Number Outstanding    2,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFiveMember
Options Exercisable    2,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFiveMember
Granted     
Exercised     
Vested     
Cancelled (2,500)BVX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsCancelledInPeriodWeightedAverageExercisePricS
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFiveMember
 
Forfeited     
Exercise Price 6.93 [Member]    
Summary of information about options outstanding    
Number Outstanding 20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixMember
20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixMember
Weighted Average Remaining Contractual Life 2 years  
Options Exercisable 20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixMember
20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 7.10 [Member]    
Summary of information about options outstanding    
Number Outstanding 12,125us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSevenMember
12,125us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSevenMember
Weighted Average Remaining Contractual Life 4 years  
Options Exercisable 12,125us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSevenMember
11,410us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSevenMember
Granted     
Exercised     
Vested 715us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSevenMember
 
Forfeited     
Exercise Price 7.18 [Member]    
Summary of information about options outstanding    
Number Outstanding 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEightMember
50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEightMember
Weighted Average Remaining Contractual Life 5 years  
Options Exercisable 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEightMember
50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEightMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 7.33 [Member]    
Summary of information about options outstanding    
Number Outstanding 114,344us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineMember
131,190us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineMember
Weighted Average Remaining Contractual Life 5 years  
Options Exercisable 131,190us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineMember
95,603us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineMember
Granted     
Exercised     
Vested 18,743us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineMember
 
Forfeited     
Exercise Price 7.68 [Member]    
Summary of information about options outstanding    
Number Outstanding 7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTenMember
7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTenMember
Weighted Average Remaining Contractual Life 4 years  
Options Exercisable 7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTenMember
7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTenMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 8.66 [Member]    
Summary of information about options outstanding    
Number Outstanding 97,857us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceElevenMember
97,857us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceElevenMember
Weighted Average Remaining Contractual Life 4 years  
Options Exercisable 97,857us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceElevenMember
86,071us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceElevenMember
Granted     
Exercised     
Vested 11,786us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceElevenMember
 
Forfeited     
Exercise Price 6.60 [Member]    
Summary of information about options outstanding    
Number Outstanding 500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwelveMember
500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwelveMember
Weighted Average Remaining Contractual Life 5 years  
Options Exercisable 500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwelveMember
500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwelveMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 8.32 [Member]    
Summary of information about options outstanding    
Number Outstanding 61,428us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
68,214us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
Weighted Average Remaining Contractual Life 5 years  
Options Exercisable 48,060us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
39,285us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
Granted     
Exercised     
Vested 8,775us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
 
Forfeited $ (6,786)us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirteenMember
 
Exercise Price 7.85 [Member]    
Summary of information about options outstanding    
Number Outstanding 7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourteenMember
7,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourteenMember
Weighted Average Remaining Contractual Life 5 years  
Options Exercisable 5,357us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourteenMember
4,286us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourteenMember
Granted     
Exercised     
Vested 1,071us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFourteenMember
 
Forfeited     
Exercise Price 6.00 [Member]    
Summary of information about options outstanding    
Number Outstanding 30,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFifteenMember
30,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFifteenMember
Weighted Average Remaining Contractual Life 6 years  
Options Exercisable 24,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFifteenMember
  
Granted     
Exercised     
Vested 24,000us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceFifteenMember
 
Forfeited     
Exercise Price 7.45 [Member]    
Summary of information about options outstanding    
Number Outstanding 100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixteenMember
100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixteenMember
Weighted Average Remaining Contractual Life 6 years  
Options Exercisable 100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixteenMember
100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSixteenMember
Granted     
Exercised     
Vested     
Forfeited     
Exercise Price 3.08 [Member]    
Summary of information about options outstanding    
Number Outstanding 10,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSeventeenMember
10,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSeventeenMember
Weighted Average Remaining Contractual Life 6 years  
Options Exercisable 5,716us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSeventeenMember
4,287us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSeventeenMember
Granted     
Exercised     
Vested 1,429us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceSeventeenMember
 
Forfeited     
Exercise Price 2.46 [Member]    
Summary of information about options outstanding    
Number Outstanding 68,446us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
74,160us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
Weighted Average Remaining Contractual Life 6 years  
Options Exercisable 58,704us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
48,926us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
Granted     
Exercised     
Vested 9,778us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
 
Forfeited $ (5,714)us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceEighteenMember
 
Exercise Price 1.89 [Member]    
Summary of information about options outstanding    
Number Outstanding 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineteenMember
50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineteenMember
Weighted Average Remaining Contractual Life 6 years  
Options Exercisable 28,572us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineteenMember
21,429us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineteenMember
Granted     
Exercised     
Vested 7,143us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceNineteenMember
 
Forfeited     
Exercise Price 2.80 [Member]    
Summary of information about options outstanding    
Number Outstanding 7,143us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
10,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
Weighted Average Remaining Contractual Life 7 years  
Options Exercisable 3,877us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
2,857us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
Granted     
Exercised     
Vested 1,020us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
 
Forfeited $ (2,857)us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyMember
 
Exercise Price 2.81 [Member]    
Summary of information about options outstanding    
Number Outstanding 15,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyOneMember
15,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyOneMember
Weighted Average Remaining Contractual Life 7 years  
Options Exercisable 6,429us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyOneMember
4,286us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyOneMember
Granted     
Exercised     
Vested 2,143us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyOneMember
 
Forfeited     
Exercise Price 2.79 [Member]    
Summary of information about options outstanding    
Number Outstanding 46,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyTwoMember
46,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyTwoMember
Weighted Average Remaining Contractual Life 8 years  
Options Exercisable 33,334us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyTwoMember
20,667us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyTwoMember
Granted     
Exercised     
Vested 12,667us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyTwoMember
 
Forfeited     
Exercise Price 2.54 [Member]    
Summary of information about options outstanding    
Number Outstanding 216,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
228,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
Weighted Average Remaining Contractual Life 8 years  
Options Exercisable 92,933us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
58,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
Granted     
Exercised     
Vested 46,933us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
 
Cancelled (12,500)BVX_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsCancelledInPeriodWeightedAverageExercisePricS
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyThreeMember
 
Forfeited     
Exercise Price 3.79 [Member]    
Summary of information about options outstanding    
Number Outstanding 100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFourMember
100,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFourMember
Weighted Average Remaining Contractual Life 8 years  
Options Exercisable 40,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFourMember
20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFourMember
Granted     
Exercised     
Vested 20,000us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFourMember
 
Forfeited     
Exercise Price 6.00 [Member]    
Summary of information about options outstanding    
Number Outstanding 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFiveMember
50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFiveMember
Weighted Average Remaining Contractual Life 9 years  
Options Exercisable 37,778us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFiveMember
27,778us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFiveMember
Granted     
Exercised     
Vested 10,000us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyFiveMember
 
Forfeited     
Exercise Price 2.50 [Member]    
Summary of information about options outstanding    
Number Outstanding 10,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySixMember
10,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySixMember
Weighted Average Remaining Contractual Life 9 years  
Options Exercisable 2,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySixMember
  
Granted     
Exercised     
Vested 2,000us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySixMember
 
Forfeited     
Exercise Price 2.97 [Member]    
Summary of information about options outstanding    
Number Outstanding 42,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySevenMember
42,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySevenMember
Weighted Average Remaining Contractual Life 9 years  
Options Exercisable 27,333us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySevenMember
20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySevenMember
Granted     
Exercised     
Vested 7,333us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentySevenMember
 
Forfeited     
Exercise Price 2.20 [Member]    
Summary of information about options outstanding    
Number Outstanding 45,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyEightMember
45,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyEightMember
Weighted Average Remaining Contractual Life 9 years  
Options Exercisable 28,333us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyEightMember
20,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyEightMember
Granted     
Exercised     
Vested 8,333us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyEightMember
 
Forfeited     
Exercise Price 2.09 [Member]    
Summary of information about options outstanding    
Number Outstanding 750,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyNineMember
750,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyNineMember
Weighted Average Remaining Contractual Life 9 years  
Options Exercisable 187,500us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyNineMember
  
Granted     
Exercised     
Vested 187,500us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceTwentyNineMember
 
Forfeited     
Exercise Price 3.90 [Member]    
Summary of information about options outstanding    
Number Outstanding 213,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 213,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 3.81 [Member]    
Summary of information about options outstanding    
Number Outstanding 169,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyOneMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 169,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyOneMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 3.63 [Member]    
Summary of information about options outstanding    
Number Outstanding 35,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyTwoMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 35,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyTwoMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 4.30 [Member]    
Summary of information about options outstanding    
Number Outstanding 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyThreeMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 50,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyThreeMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 4.05 [Member]    
Summary of information about options outstanding    
Number Outstanding 30,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyFourMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 30,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyFourMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 4.07 [Member]    
Summary of information about options outstanding    
Number Outstanding 45,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyFiveMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 45,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtyFiveMember
 
Exercised     
Vested     
Forfeited     
Exercise Price 3.50 [Member]    
Summary of information about options outstanding    
Number Outstanding 50,000us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtySixMember
 
Weighted Average Remaining Contractual Life 10 years  
Granted $ 50,000us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis
= BVX_ExercisePriceThirtySixMember
 
Exercised     
Vested     
Forfeited