name = @{ ASCII_ALPHA_LOWER ~ ("-"? ~ ASCII_ALPHANUMERIC)* }
modifiers = { "[" ~ ws* ~ name ~ ws* ~ ("," ~ ws* ~ name ~ ws*)* ~ ","? ~ ws* ~ "]" }
block = { SOI ~ name ~ modifiers? }
element = { NEWLINE ~ name ~ modifiers? }
bem = _{ block ~ element* ~ NEWLINE* ~ EOI }
ws = _{ " " | "\t" | NEWLINE }