
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;600;700&display=swap'); 
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;700&display=swap');


body, div, td, span {
font-family: 'Roboto', sans-serif;
}

body {
  font-family: 'Roboto', sans-serif;
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
}

div {
    border: 1px solid #dfdfdf;
    padding: 0px;
}

.prog-title {
    margin: 20px 0px 20px 0px;
    color: #026cc2;

}

   /* Основные стили таблицы */
    .responsive-table {
      width: 100%;          /* По умолчанию (для экранов < 1920px, включая меньше 800px) */
      table-layout: fixed; /* Жесткие пропорции колонок */
      border-collapse: collapse;
      margin: 20px auto;    /* Центрирование таблицы */
      font-family: 'Roboto', sans-serif;
      font-size: 1.35em;
      line-height: 1.15em;
      font-weight: 400;
      color: #000000B3;
}

   .block {
     border-top: 2px solid #c3d5de; border-bottom: 2px solid #c3d5de 
    }

    /* На экранах от 1920px и выше ширина становится 70% */
    @media (min-width: 1100px) {
      .responsive-table {
        width: 70%;
      }
}

.responsive-table thead th {
        font-size: 0.95em;
        font-weight: 300;
}

.responsive-table h5 {
        color: #03467d;
        font-weight: 400;
}

.responsive-table .time {
        text-align: center;

}



    /* На экранах от 1920px и выше ширина становится 70% */
@media (min-width: 300px) {
    .responsive-table thead th {
        font-size: 0.85em;
        font-weight: 400;
    }
}


.responsive-table .day {
      text-align: center;

 }

    /* Задание ширины колонок: 20% | 50% | 30% */
    .responsive-table col.col-1 { width: 20%; }
    .responsive-table col.col-2 { width: 50%; }
    .responsive-table col.col-3 { width: 30%; }

    .responsive-table thead th {
       text-align: center; 
 } 

    /* Общие стили и адаптивный шрифт ячеек */
    .responsive-table th,
    .responsive-table td {
      font-size: clamp(0.75rem, 1.45vw + 0.56rem, 1.215rem); /* Плавно от 12px до 18px */
      padding: 12px 15px;
      /*text-align: left; */
      border: 1px solid #e7eaec;
      word-wrap: break-word; /* Перенос слов, чтобы не ломать ширину */
      
      font-weight: 400;
}

    /* Стили заголовков */
    .responsive-table th {
      background-color: #4ba5ed;
      color: #ffffff;
      font-weight: bold;
      border-left: 1px solid #FFFFFF;
}

    /* Зебра-стиль (чередование цвета строк) */
    .responsive-table tbody tr:nth-of-type(even) {
      background-color: #FFFFFF;
}

    /* Стили для объединенной ячейки 3-й колонки */
    .merged-cell {
      vertical-align: middle;
      background-color: #FFFFFF;
      font-weight: bold;
}

     .merged-cell h5 {
         text-align: center!important;
         font-size: 1.05em;
         line-height: 1.05em;
         font-weight: 500;
         color: #000000B3;
    }

    /* 2. Контейнер ячейки */
    .responsive-table .logo-wrapper {
      padding: 10px;
      text-align: center;
      vertical-align: middle;
      border: 0px solid #ccc;
}


/* 3. Стиль для абсолютно адаптивного SVG */
.responsive-svg {
  width: 100%;          /* Занимает всю ширину ячейки */
  height: auto;         /* Высота рассчитывается автоматически по viewBox */
  max-width: 100%;      /* Предотвращает переполнение */
  max-height: 150px;    /* Опционально: ограничение максимальной высоты */
  display: block;       /* Убирает лишний нижний отступ (gap) inline-элементов */
  margin: 0 auto;       /* Центрирование */
}


 .tab-footer {
  
  width: 100%;          /* Занимает всю ширину ячейки */
  height: min-content;         /* Высота рассчитывается автоматически по viewBox */
  display: block;       /* Убирает лишний нижний отступ (gap) inline-элементов */
  margin: 100 auto;       /* Центрирование */

 }

  .tab-footer img {
  
  width: 100%;          /* Занимает всю ширину ячейки */
  height: auto;         /* Высота рассчитывается автоматически по viewBox */
  display: block;       /* Убирает лишний нижний отступ (gap) inline-элементов */
  margin: 0 auto;       /* Центрирование */
 }