"intro":"Operational settings stored in the database — these override the file/env defaults and take effect without a redeploy. Leave a field empty (or reset it) to fall back to the default.",
"quota_daily_budget":{"label":"Daily quota budget","hint":"Total YouTube Data API units to spend per day (free tier is 10,000). Default 9000 leaves headroom."},
"backfill_quota_reserve":{"label":"Backfill quota reserve","hint":"Units kept in reserve so scheduled backfill never starves interactive syncs / enrichment."},
"backfill_recent_max_videos":{"label":"Recent backfill — max videos","hint":"Newest videos fetched per channel on the first pass."},
"backfill_recent_max_days":{"label":"Recent backfill — max age (days)","hint":"How far back the first pass reaches per channel."},
"shorts_probe_max_seconds":{"label":"Shorts probe — max duration (s)","hint":"Only videos at or below this length are probed as possible Shorts."},
"shorts_probe_batch":{"label":"Shorts probe — batch size","hint":"How many videos to classify per run."},
"enrich_batch_size":{"label":"Enrichment batch size","hint":"videos.list ids per call (YouTube caps this at 50)."},
"youtube_api_key":{"label":"YouTube API key","hint":"Optional. Used for public reads (channels/videos) so shared backfill doesn't depend on a user's OAuth. Stored encrypted; write-only."},
"allow_registration":{"label":"Allow registration","hint":"When on, anyone can submit an email+password registration. They still need to verify their email and be approved by an admin before they can sign in."}