Afghanistan lost two quick wickets Friday, trailing Bangladesh by 616 runs at stumps after centuries from Najmul Hossain and Mominul Haque gave the hosts a third straight day of dominance in their one-off Test.
Bangladesh declared their second innings at 425-4 an hour into the third session in Dhaka and could earn the distinction of cricket's second-largest Test victory margin when play resumes.
With two full days left in the Test, the chances of a face-saving conclusion by Afghanistan immediately dimmed after Shoriful Islam trapped opener Ibrahim Zadran for a duck off the first ball of the innings.
Taskin Ahmed removed Abdul Malik for five to leave Afghanistan at 7-2, and the visitors suffered a further blow when skipper Hashmatullah Shahidi was forced to retire hurt after being hit by a bouncer.
Rahmat Shah (10) and Nasir Jamal (5) were at the crease when bad light forced stumps with Afghanistan on 45.
Najmul on Friday became only the second Bangladeshi to score a century in each innings of a Test, making 124 to go with his first innings score of 146.
Mominul, the other Bangladeshi to achieve that feat, was unbeaten on 121 alongside skipper Liton Das on 66 when the declaration was made.
It was the 12th Test century for Mominul, the highest tally by any Bangladeshi, with the left-hander smashing 12 fours and a six in his 145-ball innings.
Afghanistan toiled but could only take three wickets through the day, including two in the same over off leg-spinner Zahir Khan.
Zahir ended the prolific innings of Najmul, who gave a catch to Abdul Malik at short midwicket, ending a 151-ball knock with 15 boundaries.
Mushfiqur Rahim hit a six soon after coming to the crease but an attempted reverse sweep on the next ball brought his downfall for eight as Ibrahim Zadran took the catch at slip.
Mominul and Liton then frustrated Afghanistan with an unbroken 143-run fifth-wicket stand.
Resuming at 134-1 overnight, Najmul and Zakir Hasan batted with confidence before Afghanistan got an unexpected breakthrough against the run of play.
The duo made 173 runs before Zakir was run out for 71.
An edge from Najmul's bat raced to the boundary line, where Nasir Jamal stopped the ball and relayed it to Ibrahim.
Ibrahim's direct hit found Zakir well short while running for his third, ending their free-flowing partnership.
Zakir scored his second 50 in just his third Test.
Bangladesh scored 382 runs in the first innings and bowled out Afghanistan for 146.
Afghanistan won the only other Test between the two teams when they beat Bangladesh by 224 runs at Chittagong in 2019.