@media (max-width: 768px) {
  body {
    padding: 20px 10px;
  }
  table {
    font-size: 0.4em;
  }
  caption {
    font-size: 0.5em;
    padding: 15px;
  }
  th,
  td {
    padding: 10px 8px;
  }
  thead th {
    font-size: 0.45em;
  }
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Rubik', Arial, sans-serif;
font-size: 20px;
line-height: 1.6;
padding: 40px;
background-color: #f5f5f5;
}
/* Анимация появления */
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* Основные стили таблицы */
table {
width: 100%;
max-width: 1100px;
margin: 0 auto;
border-collapse: collapse;
background-color: white;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
border-radius: 8px;
overflow: hidden;
animation: fadeIn 0.6s ease-out;
}
/* Заголовок таблицы */
caption {
text-align: center;
font-size: 0.8em;
font-weight: bold;
padding: 20px;
background-color: #2c3e50;
color: white;
border-radius: 8px 8px 0 0;
}
/* Стили ячеек */
th {
padding: 15px;
text-align: center;
border: 1px solid #ddd;
}
td {
padding: 15px;
text-align: justify;
border: 1px solid #ddd;
}
/* Заголовки столбцов */
thead th {
background-color: #34495e;
color: white;
font-weight: bold;
text-transform: uppercase;
font-size: 0.8em;
letter-spacing: 0.5px;
}
/* Ячейки с данными */
td {
color: #333;
font-size: 0.75em;
}
/* Чередующиеся строки */
tbody tr:nth-child(even) {
background-color: #f8f9fa;
}
tbody tr:nth-child(odd) {
background-color: white;
}
/* Hover-эффект */
tbody tr:hover {
background-color: #e3f2fd;
transition: background-color 0.3s ease;
}
/* Футер таблицы */
tfoot td {
background-color: #34495e;
color: white;
font-weight: bold;
text-align: center;
padding: 18px;
font-size: 0.85em;
}