********************************************************
CSV - Prepare Your Import File from the Import Template
--------------------------------------------------------
Each CSV row houses the import information for a distinct style.

AT MINIMUM - the styles listed in each row MUST have values in these columns to be imported:
  - brewStyleGroup (category/group code)
  - brewStyleNum (sub-style code within that group)
  - brewStyle (style name)
  - brewStyleCategory (category or grouping)
  - style_type (Beer, Cider, Mead, etc.).
  
brewStyleOverallCategory is optional - use it only if your set groups several brewStyleCategory values under one broader heading (e.g., GABF's "Lager Beer Styles" covering many numbered categories). Leave it blank if your set doesn't use this kind of broader grouping.

IF A STYLE REQUIRES AN ENTRANT TO PROVIDE INFORMATION ABOUT THEIR ENTRY, set the brewStyleReqSpec column to 1 AND make sure entry instructions are present in the brewStyleEntry column, otherwise the style will not be imported.

IF A STYLE REQUIRES CARBONATION (required for Mead in general), set it's brewStyleCarb value to 1.

IF A STYLE REQUIRES STRENGTH (required for Mead, Cider in general), set it's brewStyleStrength value to 1.

IF A STYLE REQUIRES SWEETNESS (required for Mead, Cider in general), set it's brewStyleSweet value to 1.

OG/FG minimum and maximum fields are not required, but if a value is present it should be SPECIFIC GRAVITY (e.g., 1.064, 1.009, etc.)

Color minimum and maximum fields are not required, but if a value is present it should be SRM (NOT EBC).

Maximum file size is 5 MB.

********************************************************
JSON - Prepare Your Import File from the Import Template
--------------------------------------------------------
A JSON file carries the ENTIRE style set in one file - both the set's own details and every style in it. There is no separate form to fill out (unlike CSV, which pairs with fields on the upload page).

The template has two parts: the style set's own details at the top of the file, and a "styles" list containing one entry per style. Copy/paste the style block inside "styles" as many times as you need (one per style), and delete the two example blocks once you've replaced them with your own data.

SET DETAILS (top of the file) - AT MINIMUM these must have values:
  - style_set_name (REQUIRED) - 1-20 characters, letters/numbers/underscore/hyphen ONLY (no spaces). Must be unique - it cannot match the name of any style set already built into the app or already imported. This is the value that gets stored on every style you import.
  - style_set_long_name (REQUIRED)
  - style_set_short_name (REQUIRED)
  - style_set_beer_end (REQUIRED) - numeric, 1-3 digits (the "Beer Category End #").
  - style_set_category_end (REQUIRED) - numeric, 1-3 digits (the last category number used by this set).

style_set_display_separator is optional (5 characters max).

style_set_sub_style_method controls whether a style's sub-style code (brewStyleNum, below) is treated as letters or numbers for sorting/display purposes. Set it to 1 for Numeric, or 0 (or leave blank) for Alpha.

style_set_no_numbering should be true ONLY if this set's group/num numbering is purely this application's own bookkeeping and not part of the style set's own official guidelines - otherwise leave it false. Use the actual JSON words true or false with NO quotes around them - not the text "true"/"false"/"yes"/"no" in quotes, which will be misread as "true" no matter what word is inside the quotes.

EACH STYLE (inside the "styles" list) - AT MINIMUM every style you list MUST have values in these fields to be imported:
  - brewStyleGroup (category/group code)
  - brewStyleNum (sub-style code within that group)
  - brewStyle (style name)
  - brewStyleCategory (category or grouping name)
  - style_type (Beer, Cider, Mead, etc.) - must exactly match (not case-sensitive) a style type already set up in the app. If your set uses a type other than Beer, Cider, or Mead, add it first under Manage Style Types before importing.

brewStyleGroup and brewStyleNum can be numbers or letters, whatever your style set's own guidelines use. 

brewStyleOverallCategory is optional - use it only if your set groups several brewStyleCategory values under one broader heading (e.g., GABF's "Lager Beer Styles" covering many numbered categories). Leave it blank if your set doesn't use this kind of broader grouping.

IF A STYLE REQUIRES AN ENTRANT TO PROVIDE INFORMATION ABOUT THEIR ENTRY, set the brewStyleReqSpec value to 1 AND make sure entry instructions are present in the brewStyleEntry value, otherwise the style will not be imported.

IF A STYLE REQUIRES CARBONATION (required for Mead in general), set it's brewStyleCarb value to 1.

IF A STYLE REQUIRES STRENGTH (required for Mead, Cider in general), set it's brewStyleStrength value to 1.

IF A STYLE REQUIRES SWEETNESS (required for Mead, Cider in general), set it's brewStyleSweet value to 1.

brewStyleReqSpec, brewStyleStrength, brewStyleCarb, and brewStyleSweet should each be the number 0 or 1 (not quoted, and not true/false).

OG/FG minimum and maximum fields are not required, but if a value is present it should be SPECIFIC GRAVITY (e.g., 1.064, 1.009, etc.) - OG between 0.990-1.150, FG between 0.980-1.060. A Max value can't be lower than its matching Min value.

ABV minimum/maximum fields are not required, but if present must be between 0-20.

IBU minimum/maximum fields are not required, but if present must be between 0-120.

Color minimum and maximum fields are not required, but if a value is present it should be SRM (NOT EBC), between 0-500. A Max value can't be lower than its matching Min value.

A FEW JSON-SPECIFIC REMINDERS:
  - Unlike the CSV template, JSON does not support comment lines - the whole file must be valid JSON and nothing else (no # notes anywhere).
  - Every field name and every text value must be inside double quotes ("like this"); numbers (0, 1, 1.064) and the words true/false are the only things that should NOT be quoted.
  - Don't leave a trailing comma after the last field in a style, or after the last style in the "styles" list - that alone will make the whole file fail to import.
  - If you're not sure the file is valid JSON, paste it into a free online JSON validator before uploading - an invalid file is rejected outright and nothing gets imported.

Maximum file size is 5 MB.