/* ── STICKY COLUMNS (Příjmení · Jméno) ── */
#members-table td.sc-surname,
#members-table th.sc-surname {
  position: sticky;
  left: 0;
  z-index: 1;
  min-width: 130px;
}
#members-table td.sc-fname,
#members-table th.sc-fname {
  position: sticky;
  left: 130px;
  z-index: 1;
  min-width: 110px;
  box-shadow: 4px 0 8px -2px rgba(0, 0, 0, 0.45);
}

#members-table thead th.sc-surname,
#members-table thead th.sc-fname {
  z-index: 3;
  background: var(--bg3);
}

#members-table tbody tr td.sc-surname,
#members-table tbody tr td.sc-fname {
  background: var(--bg2);
}
#members-table tbody tr:hover td.sc-surname,
#members-table tbody tr:hover td.sc-fname {
  background: var(--bg3);
}

/* ── TOTAL ROW ── */
.stat-total {
  margin-left: auto;
  background: rgba(0, 0, 0, 0.3);
  border: 2px solid rgba(255, 255, 255, 0.25);
}
.stat-total .stat-cat-name {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.7);
}

/* ── Tooltip for open-ended ── */
abbr {
  text-decoration: none;
  cursor: help;
}

/* ── CLUB STATUS TOGGLE ── */
.club-toggle {
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.65rem;
  font-weight: 600;
  padding: 3px 9px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  letter-spacing: 0.04em;
  transition:
    background 0.15s,
    color 0.15s;
  white-space: nowrap;
}
.club-toggle.active {
  background: var(--accent-18);
  color: var(--accent);
  border: 1px solid var(--accent-35);
}
.club-toggle.active:hover {
  background: var(--accent-30);
}
.club-toggle.inactive {
  background: var(--muted-bg);
  color: var(--text-muted);
  border: 1px solid var(--muted-border);
}
.club-toggle.inactive:hover {
  background: rgba(136, 136, 136, 0.28);
  color: var(--text-dim);
}

/* ── COMMENT INPUT ── */
.comment-cell {
  white-space: normal !important;
  min-width: 150px;
  max-width: 240px;
}
.comment-input {
  background: transparent;
  border: none;
  border-bottom: 1px solid transparent;
  color: var(--text-dim);
  font-family: "IBM Plex Sans", sans-serif;
  font-size: 0.78rem;
  width: 100%;
  outline: none;
  padding: 1px 2px;
  transition: border-color 0.15s;
}
.comment-input:hover {
  border-bottom-color: var(--border);
}
.comment-input:focus {
  border-bottom-color: var(--green);
  color: var(--text);
  background: rgba(255, 255, 255, 0.03);
}
.comment-input::placeholder {
  color: #555;
  font-style: italic;
}

/* ── ROW ACTION BUTTONS ── */
.row-actions {
  display: flex;
  gap: 5px;
  white-space: nowrap;
}
.row-btn {
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.62rem;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 3px;
  border: 1px solid transparent;
  cursor: pointer;
  letter-spacing: 0.04em;
  transition: all 0.15s;
  opacity: 0;
}
tr:hover .row-btn {
  opacity: 1;
}
.row-btn-edit {
  background: var(--edit-bg);
  color: var(--edit-text);
  border-color: var(--edit-hover);
}
.row-btn-edit:hover {
  background: var(--edit-hover);
}
.row-btn-remove {
  background: var(--delete-bg);
  color: var(--danger);
  border-color: var(--delete-hover);
}
.row-btn-remove:hover {
  background: var(--delete-hover);
}

