При просмотре содержимого скрипки проблема связана не столько с CSS, сколько с макетом HTML.Первая проблема заключается в том, что вы создаете несколько таблиц, когда они должны быть просто 1 таблицей.Ваша верхняя «строка» должна быть частью таблицы со всем содержимым, а не отдельной таблицей.Ваш левый столбец также является отдельной таблицей.Объедините их все в одну таблицу, и это очень поможет.
Я не хочу перенаправлять ваши усилия на полное переписывание, потому что вы изучаете HTML и CSS, но вы можете обнаружить, что это очень эффективный способ реализовать "отзывчивый""дизайн с вспомогательной библиотекой.Я бы предложил рассмотреть возможность использования Bootstrap, хотя есть и много других.Bootstrap добавляет множество «вспомогательных классов», которые потребуют некоторых усилий для достижения того, чего вы пытаетесь достичь из уравнения.Рассмотрим, например, таблицы. Я думаю, что вам могут понадобиться таблицы с «точками останова».
https://getbootstrap.com/docs/4.0/content/tables/#breakpoint-specific
Другой вариант - всегда иметь отзывчивые таблицы, где размер экрана изменяет вас.получит горизонтальную рамку прокрутки.
Есть много вариантов на выбор, поэтому попробуйте.Вы можете легко добавить библиотеку Bootstrap в JS Fiddle в разделе «ресурсы».
Кроме того, вы можете рассмотреть возможность сохранения данных в формате JSON или в базе данных.По мере продвижения в этом проекте вы можете найти Datatables очень полезной библиотекой javascript.Это позволяет вам работать с необработанными данными и строить таблицы более динамично.
https://datatables.net/