from flask_wtf import FlaskForm
from wtforms import StringField
from wtforms.validators import DataRequired


class BudgetEntryForm(FlaskForm):
    # category_id is NOT a form field — it comes from a manual hidden input in the
    # template. Keeping it as HiddenField causes hidden_tag() to render an empty
    # placeholder that takes precedence over the real value in WTForms parsing.
    amount = StringField("Amount ($)", validators=[DataRequired()])


class BudgetRecommendForm(FlaskForm):
    """Empty form used solely for CSRF protection on the recommend page."""
