/* Верхняя «полоса прокрутки» */
.wp-table-topscroll{
  position: relative;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 12px;            /* только полоса */
  margin-bottom: 6px;
}
.wp-table-topscroll::before,
.wp-table-topscroll::after{
  content:"";
  position:absolute; top:0; bottom:0; width:28px; pointer-events:none;
  transition:opacity .2s; opacity:0; z-index:2;
}
.wp-table-topscroll::after{ right:0; background:linear-gradient(to left,rgba(0,0,0,.06),rgba(0,0,0,0)); }
.wp-table-topscroll::before{ left:0;  background:linear-gradient(to right,rgba(0,0,0,.06),rgba(0,0,0,0)); }

/* Контейнер таблицы (нижний скролл) — как было */
.wp-table-wrap{
  position: relative;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: .25rem;
}
.wp-table-wrap::before,
.wp-table-wrap::after{
  content:""; position:absolute; top:0; bottom:0; width:28px; pointer-events:none;
  transition:opacity .2s; opacity:0; z-index:3;
}
.wp-table-wrap::after{ right:0; background:linear-gradient(to left,rgba(0,0,0,.06),rgba(0,0,0,0)); }
.wp-table-wrap::before{ left:0;  background:linear-gradient(to right,rgba(0,0,0,.06),rgba(0,0,0,0)); }

/* Подсветка-намёк на прокрутку */
.can-scroll-right::after{ opacity:1; }
.can-scroll-left::before{ opacity:1; }

/* Базовая таблица */
:root{ --table-col-min: 7.5rem; } /* ~120px */
.wp-table{
  width:100%; border-collapse:collapse; table-layout:fixed; font-size:14px;
  min-width:max(100%, 720px);
}
.wp-table th, .wp-table td{
  min-width:var(--table-col-min);
  padding:.6rem .8rem; border-bottom:1px solid #e5e7eb; vertical-align:top;
  overflow-wrap:anywhere;
}
.wp-table th{ text-align:left; font-weight:600; }

/* Вертикальные разделители */
.wp-table th, .wp-table td{ border-right:1px solid #eef0f2; }
.wp-table th:last-child, .wp-table td:last-child{ border-right:0; }

/* Зебра */
.wp-table tbody tr:nth-child(even){ background:#fafafa; }

/* Липкая шапка */
.wp-table thead th{ position:sticky; top:0; background:#fff; z-index:2; }

/* (опц.) липкий первый столбец */
.wp-table.wp-table--sticky-col th:first-child,
.wp-table.wp-table--sticky-col td:first-child{
  position:sticky; left:0; background:#fff; z-index:3; box-shadow:1px 0 0 #e5e7eb;
}

/* ПЕРВАЯ КОЛОНКА ШИРЕ ×2 */
.wp-table th:first-child,
.wp-table td:first-child{
  min-width: calc(var(--table-col-min) * 2);
  width:      calc(var(--table-col-min) * 2);
}

.wpcf7-not-valid-tip + .wpcf7-not-valid-tip {
  display: none;
}