.table {
  overflow-x: auto;
}

.table .row:not(.head),
.table table tbody tr {
  cursor: pointer;
  transition: background-color .16s ease, box-shadow .16s ease;
}

.table .row:not(.head):nth-child(odd),
.table table tbody tr:nth-child(even) {
  background: #fbfcfe;
}

.table .row:not(.head):hover,
.table table tbody tr:hover {
  background: #eef6ff !important;
  box-shadow: inset 4px 0 #2477ed;
}

.table .row:not(.head):hover .code,
.table table tbody tr:hover .code {
  color: #064da8;
  text-decoration: underline;
}

.table .row.head {
  border-bottom: 1px solid #dfe6ef;
}

.table .actions button,
.table .actions a {
  position: relative;
  z-index: 2;
}

#fields > section:not(#servicePanel) {
  margin-top: 30px !important;
  padding-top: 25px !important;
  border-top: 1px solid #dfe6ef !important;
}

#fields > section:not(#servicePanel) > h3 {
  margin: 0 0 16px !important;
  font-size: 20px;
}

#fields > section:not(#servicePanel) > div {
  overflow: hidden;
  border: 1px solid #dfe6ef !important;
  border-radius: 12px !important;
  background: #fff;
}

#fields > section:not(#servicePanel) > div > div {
  display: grid !important;
  grid-template-columns: 150px 130px minmax(150px, 1fr) 90px !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 13px 16px !important;
  border-top: 1px solid #edf0f4 !important;
  transition: background-color .15s ease;
}

#fields > section:not(#servicePanel) > div > div:first-child {
  border-top: 0 !important;
  background: #f5f8fc !important;
  color: #64748b !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .04em;
}

#fields > section:not(#servicePanel) > div > div:not(:first-child):hover {
  background: #eef6ff;
}

#fields > section:not(#servicePanel) > div > div > span:nth-child(3),
#fields > section:not(#servicePanel) > div > div > b:nth-child(3) {
  text-align: right !important;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

#fields > section:not(#servicePanel) .actions {
  justify-content: flex-end;
}

#fields > .grid + div:not(.lines):not(#servicePanel) {
  overflow: hidden;
  margin-top: 26px !important;
  border: 1px solid #dfe6ef !important;
  border-radius: 12px !important;
}

#fields > .grid + div:not(.lines):not(#servicePanel) > div {
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) 90px 115px 120px !important;
  gap: 16px !important;
  padding: 13px 16px !important;
  border-top: 1px solid #edf0f4 !important;
}

#fields > .grid + div:not(.lines):not(#servicePanel) > div:first-child {
  border-top: 0 !important;
  background: #f5f8fc !important;
}

@media (max-width: 800px) {
  #fields > section:not(#servicePanel) > div,
  #fields > .grid + div:not(.lines):not(#servicePanel) {
    overflow-x: auto;
  }
  #fields > section:not(#servicePanel) > div > div { min-width: 650px; }
  #fields > .grid + div:not(.lines):not(#servicePanel) > div { min-width: 720px; }
}
