"""Challenge 96: Practice-text feedback, not an actual security audit."""
import string

def review_practice_text(text):
    missing = []
    if len(text) < 12:
        missing.append("try at least 12 characters")
    if not any(c.islower() for c in text):
        missing.append("include a lowercase letter")
    if not any(c.isupper() for c in text):
        missing.append("include an uppercase letter")
    if not any(c.isdigit() for c in text):
        missing.append("include a digit")
    if not any(c in string.punctuation for c in text):
        missing.append("include a symbol")
    return missing

def main():
    print("Use fictional text only: never enter a real password.")
    print("Your terminal may show the text as you type it.")
    practice = input("Practice text: ")
    missing = review_practice_text(practice)
    if missing:
        for suggestion in missing:
            print("Suggestion:", suggestion)
    else:
        print("Meets these practice rules; this does not prove security.")
    # Do not display, log or save the user's entered text.

if __name__ == "__main__":
    main()
