How Can MyEtherWallet Send Offline?
One thing to understand is that every address already "exists". When you "create a wallet" you are not actually communicating with the blockchain in any way.
Creating a wallet randomly generates both a private key and an address (public key) that corresponds to that private key. Once generated it is very important to save, and backup, both your private and public key.
You can do this on a device that is connected to the internet..or one that is not.
Cold storage is a device that is not, and will never be, connected to the internet. This means that even if someone were to completely hack you and your computer and your phone, your key would be safe. Yay!
One common cold storage method is simply using a paper wallet. This is just the data, written or printed, on a piece of paper. Bad folks on the internet can't hack your paper. (But you should still watch out for your roommate, FYI.)
For offline or cold storage wallets, only your ETH is on the blockchain, your private key is kept offline and never introduced to an online device.
Regardless of what service you use to "store" your ETH, your ETH are lines of code on the Ethereum blockchain. Transactions add more lines of code and all these lines together determine what address has what balance.
Your private key, or keystore file, is simply the way you access and prove ownership of a particular address on the blockchain. You can think of this is an encrypted password (not the same as a logon password).
The part that usually confuses people is how MyEtherWallet can generate a valid wallet without being online.
The software, in this case MyEtherWallet, is able to generate a valid public key (wallet address) based on programmatic algorithms and "rules" that work on the public "online" blockchain. The software alone generates this as a unique key.
Your password enables you to decrypt a keystore file, and can also be used to unlock your wallet as needed.
You can generate a transaction offline using the same MyEtherWallet software, in an offline environment, and then broadcast that transaction code using an online device.
This way your private key can remain secure on the offline device and can be used to generate a valid transaction for the online device to broadcast.