/* ==========================================================================
   Страница: центрирование контента таблицы
   ========================================================================== */
.table-only-page {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-height: 100vh;
  padding: 24px;
}

/* ==========================================================================
   Блок: fzmt-table — обёртка заголовка и сетки таблицы
   ========================================================================== */
.fzmt-table {
  width: 2000px;
  max-width: 100%;
}

/* При встраивании таблицы в catalog.html:
   - у .table-container свой вертикальный скролл
   - заголовок и хедеры фиксируются относительно этого контейнера
   - строки не «вылазят» выше заголовка за счёт обрезки по радиусу */
.table-section .fzmt-table {
  position: sticky;
  top: 430px;
  z-index: 8;
}
.table-section .table-container {
  max-height: calc(100vh - 500px); /* высота окна минус шапка и небольшой отступ */
  position: relative;
  overflow-y: auto;
  overflow-x: hidden;
  border-radius: 15px;
  /* Скрываем полосы прокрутки, но оставляем скролл */
  scrollbar-width: none;          /* Firefox */
}
.table-section .table-container::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.table-section .table-grid .cell.header.main,
.table-section .table-grid .cell.header.category {
  position: sticky;
  top: -1px; /* примерно высота заголовка таблицы */
  z-index: 9;
}
.table-section .table-grid .cell.header.sub {
  position: sticky;
  top: 42px; /* чуть ниже основных хедеров */
  z-index: 9;
}

/* --------------------------------------------------------------------------
   Элемент: заголовок таблицы (по Figma FZMT_Dark, node 26-3496)
   Внешний контур: 2000×120, отступы 10px, между блоком текста и иконкой 10px
   -------------------------------------------------------------------------- */
.fzmt-table__title {
  box-sizing: border-box;
  width: 100%;
  padding: 10px 10px 9px;
  display: flex;
  align-items: stretch;
  gap: 10px;
  border-radius: 15px;
  border: 3px solid #42C9FF;
  background: rgba(0, 49, 153, 0.15);
  backdrop-filter: blur(10px);
  position: relative;
  top: auto;
}

/* Текст заголовка: синяя плашка 1870×100, текст от левого края плашки 31px */
.fzmt-table__title-text {
  margin: 0;
  flex: 1;
  min-width: 0;
  height: 100px;
  display: flex;
  align-items: center;
  padding-left: 31px;
  padding-right: 10px;
  border-radius: 15px;
  background: #24A4FF;
  color: #FFFFFF;
  font-family: "Conthrax SemiBold", sans-serif;
  font-size: 33px;
  font-weight: 600;
  line-height: 1.388em;
  text-transform: uppercase;
  text-align: left;
}

/* Иконка справа: 100×100, по Figma (Group 15) */
.fzmt-table__title-icon {
  width: 100px;
  height: 100px;
  flex-shrink: 0;
  border-radius: 15px;
  background: #24A4FF url("../images/icons/arrow_up.svg") center no-repeat;
  background-size: 50px 50px;
  transition: transform 0.2s ease;
}

.fzmt-table__title-icon.is-down {
  transform: rotate(180deg);
}

/* ==========================================================================
   Блок: table-grid — сетка таблицы
   ========================================================================== */
.table-grid {
  display: grid;
  /* 13 колонок: две широкие + 12 равных */
  grid-template-columns: minmax(100px, 1fr) minmax(100px, 1fr) repeat(12, 1fr);
  margin-top: -2px;
}

.cell {
  padding: 10px 5px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-family: Gubia, Verdana;
  font-size: 17px;
  font-style: normal;
  font-weight0: 700;
  line-height: normal;
  background: rgba(0, 61, 153, 0.45);
  backdrop-filter: blur(5px);
}
.cell.odd{
  background: rgba(0, 49, 153, 0.15);
  backdrop-filter: blur(5px);
}

  /* Стилизация заголовков */
.header {
  background: rgba(0, 49, 153, 0.15);
  backdrop-filter: blur(5px);
  color: #fff;
  text-transform: uppercase;
  border-top: 3px solid #42C9FF;
  border-left: 3px solid #42C9FF;
}

.header.main,
.header.sub{
  border-bottom: 3px solid #42C9FF;
}

.header.main,
.header.sub,
.header.category{
  backdrop-filter: blur(31px); 
}

.header.lt{
  border-radius: 15px 0 0 15px;
}
.header.rt,
.cell.data.rt{
  border-radius: 0 15px 0 0;
  border-right: 3px solid #42C9FF;
}
.header.rb,
.cell.data.rb{
  border-radius: 0 0 15px 0;
  border-right: 3px solid #42C9FF;
}
.cell.data.lt{
  border-radius: 15px 0 0 0 ;
}
.cell.data.lb{
  border-radius: 0 0 0 15px;
}

.cell.data{
  border-top: 3px solid #42C9FF;
  border-left: 3px solid #42C9FF;
}

.cell.data.cell__last{
  border-bottom: 3px solid #42C9FF;
}
.cell.data.col__last{
  border-right: 3px solid #42C9FF;
}

.cell__first{
  margin-top:-2px;
}
