recoveryWordsToEntropy

Decode a recovery phrase back to its 32-byte entropy. Input is normalized (trimmed, lowercased) so user-typed casing/spacing doesn't matter. Throws if the phrase is invalid (wrong word count, unknown word, or bad checksum) — validate with isValidRecoveryPhrase first for a non-throwing check.