A remarkable maiden Test hundred by Ibrahim Zadran helped Afghanistan recover in the one-off Test against Sri Lanka in Colombo, as the tourists ended day three on 199 for one on Sunday.