<div className='grid grid-col-[1fr_1fr] grid-row-[repeat(5,_1fr)]'>
<div className='row-start-2 row-end-4'> </div>
// и таким образом двигать нужные тебе блоки, если что ссылка на доку ниже
<div/>flex по этому это не так работает как ты думал, а именно - text питается занять всю ширину. У тебя несколько выходов:width а как min-width.text flex 1.