.raid-card {
  transition: border-color 0.15s, transform 0.1s;
}

.raid-card:hover {
  transform: translateY(-2px);
}

.class-Warrior {
  color: #c69b3a;
}

.class-Paladin {
  color: #f58cba;
}

.class-Hunter {
  color: #abd473;
}

.class-Rogue {
  color: #fff569;
}

.class-Priest {
  color: #e5e5e5;
}

.class-Shaman {
  color: #0070de;
}

.class-Mage {
  color: #69ccf0;
}

.class-Warlock {
  color: #9482c9;
}

.class-Druid {
  color: #ff7d0a;
}

.class-Deathknight {
  color: #c41e3a;
}

.tab-btn {
  transition: color 0.15s, border-color 0.15s;
}

.tab-btn.active {
  color: #ff0090;
  border-bottom-color: #ff0090;
}

.tab-panel {
  display: none;
}

.tab-panel.active {
  display: block;
}

.signup-row,
.sr-row {
  transition: background 0.1s;
}

.signup-row:hover,
.sr-row:hover {
  background: rgba(124, 58, 237, 0.05);
}

.signup-row.mine,
.sr-row.mine {
  background: rgba(255, 0, 144, 0.07);
  border-left: 2px solid #ff0090;
}

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

th.sortable:hover {
  color: #a855f7;
}

th.sort-asc::after {
  content: " ^";
  color: #ff0090;
  font-size: 0.7em;
}

th.sort-desc::after {
  content: " v";
  color: #ff0090;
  font-size: 0.7em;
}

.event-description {
  white-space: pre-wrap;
  font-size: 0.85rem;
  line-height: 1.7;
  color: #9ca3af;
}

.event-description a {
  color: #a855f7;
  text-decoration: underline;
}

.assign-row-mine td {
  background: rgba(255, 0, 144, 0.06) !important;
}

.assign-row-mine td:first-child {
  color: #ff0090 !important;
}

.event-assignments-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 0.8rem;
}

.event-assignments-table th,
.event-assignments-table td {
  border: 1px solid #2d2d2d;
}

.event-assignments-table .section-header {
  background: #111;
  color: #ff0090;
  font-size: 0.7rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 6px 12px;
  text-align: left;
}

.event-assignments-table .boss-header {
  background: #1a1a1a;
  color: #9ca3af;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 5px 12px;
  text-align: left;
}

.event-assignments-table .boss-header:not(.player-header) {
  white-space: nowrap;
}

.event-assignments-table .player-cell {
  padding: 4px 12px;
  color: #a855f7;
  font-family: monospace;
  font-weight: 600;
  background: #111;
  white-space: nowrap;
}

.event-assignments-table .assignment-cell {
  padding: 4px 12px;
  color: #d1d5db;
  font-size: 0.78rem;
}

.event-assignments-table .empty-cell {
  padding: 4px 12px;
  color: #374151;
  text-align: center;
}
