rules: - sub_score: visual_focus max_score: 50 trigger_feature: peak_saliency trigger_condition: lt trigger_value: 0.5 message: "Add a dominant focal element (larger main object, brighter color on subject, or isolate the subject from background)." max_gain: 20 - sub_score: visual_focus max_score: 50 trigger_feature: center_saliency trigger_condition: lt trigger_value: 0.3 message: "Move the main subject closer to the center or a rule-of-thirds intersection to establish a clear visual anchor." max_gain: 15 - sub_score: visual_focus max_score: 50 trigger_feature: top20_fraction trigger_condition: gt trigger_value: 0.4 message: "Too many competing focal areas — reduce background detail, blur non-essential zones, or remove decorative clutter." max_gain: 18 - sub_score: readability max_score: 50 trigger_feature: ocr_confidence trigger_condition: lt trigger_value: 0.6 message: "Increase text contrast: use darker text on lighter backgrounds (or vice versa). Ensure font size is at least 2% of image height." max_gain: 20 - sub_score: readability max_score: 50 trigger_feature: text_coverage trigger_condition: gt trigger_value: 0.4 message: "Reduce text density — move details to a caption or legend below the image. Use bullet points instead of paragraphs." max_gain: 15 - sub_score: readability max_score: 50 trigger_feature: word_count trigger_condition: gt trigger_value: 30 message: "Shorten labels to 2–3 words each; move long descriptions outside the image. Use abbreviations where appropriate." max_gain: 12 - sub_score: complexity_balance max_score: 50 trigger_feature: edge_density trigger_condition: gt trigger_value: 0.15 message: "Simplify: remove decorative borders, reduce line detail, and increase spacing between visual elements." max_gain: 18 - sub_score: complexity_balance max_score: 50 trigger_feature: edge_density trigger_condition: lt trigger_value: 0.03 message: "Add structural elements: borders, dividers, icons, or visual markers to guide the eye and provide visual structure." max_gain: 15 - sub_score: complexity_balance max_score: 50 trigger_feature: color_entropy trigger_condition: gt trigger_value: 5.0 message: "Reduce color palette to 3–5 main colors; use a consistent color scheme. Use shades of the same hue for related elements." max_gain: 12 - sub_score: communication_clarity max_score: 50 trigger_feature: whitespace_ratio trigger_condition: lt trigger_value: 0.05 message: "Increase padding and margins — add whitespace around key elements. White space is not wasted space." max_gain: 15 - sub_score: communication_clarity max_score: 50 trigger_feature: contrast trigger_condition: lt trigger_value: 0.3 message: "Increase overall contrast — the image appears flat/washed out. Darken darks and lighten lights." max_gain: 18 - sub_score: communication_clarity max_score: 50 trigger_feature: symmetry_lr trigger_condition: lt trigger_value: 0.7 message: "Balance the composition — distribute visual weight more evenly left-to-right to avoid a lopsided appearance." max_gain: 10 - sub_score: concept_match max_score: 50 trigger_feature: concept_cosine trigger_condition: lt trigger_value: 0.2 message: "The image doesn't clearly convey the intended concept — add concept-specific visual elements, icons, or labels that reinforce the topic." max_gain: 25 - sub_score: neural_richness max_score: 50 trigger_feature: clip_norm trigger_condition: lt trigger_value: 15 message: "Add visual variety: mix textures, depths, or scene complexity to enrich the visual signal. Avoid overly uniform or flat backgrounds." max_gain: 12 - sub_score: memorability_proxy max_score: 50 trigger_feature: nima_aesthetic_proxy trigger_condition: lt trigger_value: 0.4 message: "Improve visual appeal: better lighting, more saturated key colors, or a more dynamic and unexpected composition." max_gain: 15 fallback_messages: visual_focus: "Improve the focal point by making the main subject larger, more colorful, or more isolated." readability: "Review all text: increase contrast and font size, shorten labels, and declutter the text areas." complexity_balance: "Reduce or add visual elements to find a balance — neither empty nor overcrowded." communication_clarity: "Improve the visual hierarchy: use spacing, alignment, and contrast to guide the viewer's eye." concept_match: "Strengthen the connection to the topic — add icons, labels, or imagery that directly illustrate the concept." neural_richness: "Increase visual depth and variety through texture, lighting, or compositional complexity." memorability_proxy: "Add an unusual or striking element — a bold color, unexpected angle, or strong visual metaphor."