:root {
  --bg-color: #1e2737;
  --card-color: #404c5d;
  --text-color: #e0e0e0;
  --accent: #62a8f9;
  --border: #202938;
  --hover: #2a2a2a;
}

body {
  background-color: #1b2331;
  color: var(--text-color);
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  margin: 0;
  padding: 0;
  padding-top: 20px;
}

.title {
  padding: 10px 0px;
}

h2 {
  font-size: clamp(8px, 3.5vw, 24px);
  text-align: center;
  color: var(--accent);
  margin: 0;
  padding: 0;
}

.table-container {
  margin-left: auto;
  margin-right: auto;
  background: var(--bg-color);
  border-radius: 4px;
  box-shadow: 0 0 10px var(--border);
  max-width: 840px;
  padding: clamp(0px, 2vw, 20px) clamp(0px, 1.5vw, 20px);
  user-select: none;
}

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0 8px;
  margin: 0;
  background-color: transparent;
}

th,
td {
  font-weight: bold;
  font-size: clamp(10px, 2vw, 14px);
  text-align: center;

  overflow: hidden;
}
th {
  white-space: nowrap;
  text-overflow: ellipsis;
  color: var(--accent);
  background-color: var(--hover);
  height: 30px;
}

th:nth-child(2) {
  width: 40%;
}
th:nth-child(3) {
  width: 10%;
}
th:nth-child(4) {
  width: 15%;
}

td:nth-child(2) {
  white-space: normal;
  word-break: break-word;
}
td:nth-child(3) {
  white-space: normal;
  word-break: break-word;
}
td:nth-child(4) {
  white-space: nowrap;
  text-overflow: ellipsis;
}

td.td-cover {
  padding: 0;
  text-align: center;
  vertical-align: middle;
}

td.td-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

thead tr {
  background-color: var(--hover);
}

tbody tr {
  background-color: var(--card-color);
  transition: all 0.2s ease;
}

tbody tr:hover {
  background-color: #5a6b83;
  border: 2px solid #6a7d9f;
  box-shadow: 0 0 8px #6a7d9f;
  transform: scale(1.01);
}

a {
  color: var(--accent);
  text-decoration: none;
  transition: color 0.2s;
}

a:visited {
  color: #9789dd;
}

span[style*="text-decoration:line-through"] {
  color: #aaa;
  font-size: 0.9em;
}

span:not([style*="text-decoration"]) {
  color: #7dae3c;
  font-weight: bold;
}
