@@ -286,10 +286,10 @@ pub fn print_probability_breakdown(
286286 let pattern_len = pattern. chars ( ) . count ( ) ;
287287 let locale = SystemLocale :: default ( ) . unwrap ( ) ;
288288
289- println ! ( "{}" , colors:: light_green ( "PROBABILITY CALCULATION" ) ) ;
289+ println ! ( "{}" , colors:: yellow ( "PROBABILITY CALCULATION" ) ) ;
290290
291291 // Pattern Analysis
292- println ! ( "\n {} '{}'" , colors:: white ( "→ Pattern Analysis:" ) , colors:: light_green ( pattern) ) ;
292+ println ! ( "\n {} '{}'" , colors:: yellow ( "→ Pattern Analysis:" ) , colors:: bright_yellow ( pattern) ) ;
293293
294294 let mut calculations = Vec :: new ( ) ;
295295 let mut calc_string = String :: new ( ) ;
@@ -342,13 +342,13 @@ pub fn print_probability_breakdown(
342342 }
343343
344344 // Base Calculation
345- println ! ( "\n {}" , colors:: white ( "→ Base Calculation:" ) ) ;
346- println ! ( "{} = {}" , calc_string, colors :: light_green ( & base_probability. to_formatted_string( & locale) ) ) ;
345+ println ! ( "\n {}" , colors:: yellow ( "→ Base Calculation:" ) ) ;
346+ println ! ( "{} = {}" , calc_string, base_probability. to_formatted_string( & locale) ) ;
347347
348348 if base_probability == 1 {
349349 println ! ( "{}" , colors:: green( "(Pattern matches network prefix or uses only wildcards - guaranteed match!)" ) ) ;
350350 } else {
351- println ! ( "( This is how many random addresses you'd need to check if there was only ONE position)" ) ;
351+ println ! ( "{}" , colors :: gray ( "( This is how many random addresses you'd need to check if there was only ONE position)") ) ;
352352 }
353353
354354 // Position Analysis
@@ -360,8 +360,8 @@ pub fn print_probability_breakdown(
360360 "Prefix Mode"
361361 } ;
362362
363- println ! ( "\n {}" , colors:: white ( & format!( "→ Position Analysis ({}):" , mode_name) ) ) ;
364- println ! ( "Address structure: [49 total characters]" ) ;
363+ println ! ( "\n {}" , colors:: yellow ( & format!( "→ Position Analysis ({}):" , mode_name) ) ) ;
364+ println ! ( "{}" , colors :: gray ( " Address structure: [49 total characters]") ) ;
365365
366366 // Get the network prefix to check for locked positions
367367 let network_prefixes = if let Some ( network) = crate :: networks:: find_network_by_prefix ( ss58_prefix) {
@@ -476,11 +476,14 @@ pub fn print_probability_breakdown(
476476 } ;
477477 println ! ( " {}" , colors:: yellow( & prefix_info) ) ;
478478
479- println ! ( "\n Where can \" {}\" ({} chars) fit in the last {} characters?" , pattern, pattern_len, within) ;
479+ println ! ( "\n {}\" {}\" {}" ,
480+ colors:: gray( "Where can " ) ,
481+ colors:: bright_yellow( pattern) ,
482+ colors:: gray( & format!( "({} chars) fit in the last {} characters?" , pattern_len, within) ) ) ;
480483
481484 // Show positions with their individual probabilities
482485 if !positions. is_empty ( ) {
483- println ! ( "\n {}" , colors:: white ( "Per-Position Probability Analysis:" ) ) ;
486+ println ! ( "\n {}" , colors:: yellow ( "Per-Position Probability Analysis:" ) ) ;
484487
485488 // Check if position 0 is included (for prefix overlap detection)
486489 let has_position_zero = positions. contains ( & 0 ) ;
@@ -512,7 +515,7 @@ pub fn print_probability_breakdown(
512515 pos,
513516 display_prefix,
514517 "." . repeat( dots_before) ,
515- colors:: yellow ( pattern) ,
518+ colors:: bright_yellow ( pattern) ,
516519 "-" . repeat( dashes_after) ,
517520 prob. to_formatted_string( & locale) ) ;
518521 }
@@ -521,7 +524,7 @@ pub fn print_probability_breakdown(
521524 pos,
522525 display_prefix,
523526 "." . repeat( dots_before) ,
524- colors:: yellow ( pattern) ,
527+ colors:: bright_yellow ( pattern) ,
525528 "-" . repeat( dashes_after) ,
526529 prob. to_formatted_string( & locale) ) ;
527530 }
@@ -535,7 +538,7 @@ pub fn print_probability_breakdown(
535538
536539 // Show position probabilities for anywhere mode
537540 if !positions. is_empty ( ) {
538- println ! ( "\n {}" , colors:: white ( "Per-Position Probability Analysis:" ) ) ;
541+ println ! ( "\n {}" , colors:: yellow ( "Per-Position Probability Analysis:" ) ) ;
539542
540543 let has_position_zero = positions. contains ( & 0 ) ;
541544 let pos0_prob = if has_position_zero {
@@ -580,7 +583,7 @@ pub fn print_probability_breakdown(
580583
581584 // Show position probabilities for prefix mode
582585 if !positions. is_empty ( ) {
583- println ! ( "\n {}" , colors:: white ( "Per-Position Probability Analysis:" ) ) ;
586+ println ! ( "\n {}" , colors:: yellow ( "Per-Position Probability Analysis:" ) ) ;
584587
585588 for ( i, & pos) in positions. iter ( ) . enumerate ( ) {
586589 if i >= 5 && positions. len ( ) > 6 {
@@ -611,15 +614,15 @@ pub fn print_probability_breakdown(
611614 colors:: gray( "Result:" ) , possible_positions) ;
612615
613616 // Final Calculation
614- println ! ( "\n {}" , colors:: white ( "→ FINAL CALCULATION:" ) ) ;
617+ println ! ( "\n {}" , colors:: yellow ( "→ FINAL CALCULATION:" ) ) ;
615618 println ! ( " {}" , colors:: gray( "─────────────────────────" ) ) ;
616619
617620 let expected_attempts = if positions. is_empty ( ) {
618621 println ! ( "{}" , colors:: red( "No valid positions found - pattern cannot match!" ) ) ;
619622 u64:: MAX
620623 } else if positions. len ( ) == 1 {
621624 let prob = calculate_probability_at_position ( pattern, positions[ 0 ] , case_sensitive, ss58_prefix) ;
622- println ! ( " Only 1 position available (position {})" , positions[ 0 ] ) ;
625+ println ! ( " {}" , colors :: gray ( & format! ( " Only 1 position available (position {})", positions[ 0 ] ) ) ) ;
623626 prob
624627 } else {
625628 // Multiple positions - use harmonic mean
@@ -702,10 +705,10 @@ pub fn print_probability_breakdown(
702705 format ! ( "{:.prec$}%" , percentage, prec = decimal_places)
703706 } ;
704707
705- println ! ( "\n {} Expected {} attempts • {} ({})" ,
708+ println ! ( "\n {} Expected {} attempts · {} ({})" ,
706709 colors:: yellow( "→ SUMMARY:" ) ,
707- colors :: light_green ( & format!( "~{}" , expected_attempts. to_formatted_string( & locale) ) ) ,
708- colors :: gray ( & format!( "1 in {}" , expected_attempts. to_formatted_string( & locale) ) ) ,
710+ format!( "~{}" , expected_attempts. to_formatted_string( & locale) ) ,
711+ format!( "1 in {}" , expected_attempts. to_formatted_string( & locale) ) ,
709712 percentage_str) ;
710713
711714 println ! ( ) ;
0 commit comments