/* ── Prospect Table Module ───────────────────────────────────────────────── */

.pt-wrap {
  font-family: system-ui, -apple-system, sans-serif;
  color: #1a202c;
  margin: 16px 0;
  max-width: 100%;
}

/* Controls */
.pt-controls {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 0;
  flex-wrap: wrap;
  background: #ebf8ff;
  border: 1px solid #bee3f8;
  border-bottom: none;
  padding: 10px 14px;
  border-radius: 8px 8px 0 0;
}

.pt-search {
  flex: 1;
  min-width: 200px;
  padding: 8px 12px;
  border: 1px solid #bee3f8;
  border-radius: 6px;
  font-size: 14px;
  outline: none;
  color: #1a202c;
  background: #fff;
}

.pt-search:focus {
  border-color: #63b3ed;
  box-shadow: 0 0 0 3px rgba(99,179,237,0.25);
}

.pt-count {
  font-size: 13px;
  color: #2b6cb0;
  font-weight: 600;
  white-space: nowrap;
}

/* Table wrapper */
.pt-table-wrap {
  overflow-x: auto;
  border: 1px solid #bee3f8;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07);
}

/* Table */
.pt-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

/* Header */
.pt-table thead {
  background: #1e3a5f;
}

.pt-th {
  padding: 11px 14px;
  text-align: left;
  color: #90cdf4;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  white-space: nowrap;
  border-right: 1px solid #2d5282;
}

.pt-th:last-child {
  border-right: none;
}

.pt-sortable {
  cursor: pointer;
  user-select: none;
}

.pt-sortable:hover {
  background: #2d5282;
  color: #bee3f8;
}

.pt-sort-icon {
  margin-left: 4px;
  opacity: 0.5;
  font-size: 10px;
}

/* Body rows */
.pt-table tbody tr {
  border-bottom: 1px solid #ebf8ff;
  transition: background 0.1s;
}

.pt-table tbody tr:last-child {
  border-bottom: none;
}

.pt-table tbody tr:nth-child(even) {
  background: #f0f8ff;
}

.pt-table tbody tr:hover {
  background: #ebf8ff;
}

.pt-table td {
  padding: 9px 14px;
  color: #2d3748;
  vertical-align: middle;
  border-right: 1px solid #ebf8ff;
}

.pt-table td:last-child {
  border-right: none;
}

/* Rank column */
.pt-table td:first-child {
  color: #2b6cb0;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
  width: 55px;
  background: #f0f8ff;
}

.pt-table tbody tr:nth-child(even) td:first-child {
  background: #e6f4ff;
}

.pt-table tbody tr:hover td:first-child {
  background: #bee3f8;
}

/* Player name link */
.pt-player-link {
  color: #1e3a5f;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.15s;
}

.pt-player-link:hover {
  color: #2b6cb0;
  text-decoration: underline;
}

/* Pagination */
.pt-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 10px 14px;
  background: #ebf8ff;
  border: 1px solid #bee3f8;
  border-top: none;
  border-radius: 0 0 8px 8px;
}

.pt-btn {
  padding: 6px 16px;
  background: #1e3a5f;
  color: #90cdf4;
  border: none;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
}

.pt-btn:hover:not(:disabled) {
  background: #2d5282;
  color: #bee3f8;
}

.pt-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.pt-page-info {
  font-size: 13px;
  color: #2b6cb0;
  font-weight: 600;
}

/* Responsive */
@media (max-width: 600px) {
  .pt-th, .pt-table td {
    padding: 7px 8px;
    font-size: 12px;
  }
}
