nciku.com states that 起码 is an adjective meaning "minimum" and 至少 is an adverb meaning at least； but the examples seem to use both words interchangeably. Is one more colloquial than the other? Or is one used only for numerical amounts( It should cost at least $10) and the other for concepts/situations such as "At least the bus isn't late"?
They are almost the same and are interchangeble in most circumstances. Maybe the only difference is that "至少" is more formal than "起码” and is more common in written expression.
Both 起碼 and 至少 mean "minimum" and "least". They both can be used either as adjectives or as adverbs.
最起碼 is valid, but because 至 means 最. 最至少 is invalid (just like "the least least" and "the most least" are invalid).
至少 has a rarely-used meaning of "very less", which can not be replaced by 起碼.
至少 is a little more formal than 起碼. But in the legal documents, 以上 ("equals to or more than") is more widely used.