/* ══════════════════════════════════════════════════════════════
   TERAGEST DEV — Service Table
   ══════════════════════════════════════════════════════════════ */

#tbl-wrap { flex: 1; overflow: auto; -webkit-overflow-scrolling: touch; background: var(--bg); }
table { width: 100%; border-collapse: collapse; font-size: 11px; min-width: 700px; }
thead { position: sticky; top: 0; z-index: 5; }
thead th {
  font-family: var(--mono); font-size: 9px; color: var(--text3); font-weight: 600;
  text-transform: uppercase; letter-spacing: .4px; padding: 8px 10px; text-align: left;
  background: var(--surface); border-bottom: 2px solid var(--border); white-space: nowrap;
  cursor: pointer; user-select: none; transition: color .15s; position: relative;
}
thead th:hover { color: var(--accent); }
thead th .sort-arrow { font-size: 8px; margin-left: 3px; color: var(--accent); display: none; }
thead th.sorted .sort-arrow { display: inline; }
thead th.hidden-col { display: none; }
tbody td {
  padding: 7px 10px; border-bottom: 1px solid var(--border); color: var(--text);
  vertical-align: middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 200px;
}
tbody td.hidden-col { display: none; }
tbody tr { transition: background .1s; cursor: pointer; background: var(--surface); }
tbody tr:nth-child(even) { background: var(--surface2); }
tbody tr:active { background: rgba(37,99,235,.06); }
tbody tr.selected { background: rgba(37,99,235,.1); border-left: 3px solid var(--accent); }

.empty { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 60px 20px; gap: 8px; }
.empty-ico { font-size: 36px; opacity: .3; }
.empty-txt { font-family: var(--mono); font-size: 10px; color: var(--text3); }
