/* Extracted from index.css L1505-L1634: Tables */

/* ===== TABLES ===== */
table { width: 100%; border-collapse: separate; border-spacing: 0 5px; margin-top: 0.5rem; }
thead { background: transparent; }
th { 
  padding: 0.5rem 0.85rem; 
  text-align: left; 
  font-weight: 700; 
  color: var(--text-muted);
  font-size: 0.63rem; 
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
td { 
  padding: 0.75rem 0.85rem; 
  color: var(--text-primary); 
  font-size: 0.88rem;
  background: transparent;
}

/* ── Transaction row enhancement ── */
tbody tr {
  position: relative;
  background: rgba(255,255,255,0.025);
  border-radius: 8px;
  transition:
    transform 0.18s ease,
    box-shadow 0.18s ease,
    background 0.18s ease;
  animation: rowSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) both;
}

/* Round the first and last td in each row */
tbody tr td:first-child { border-radius: 8px 0 0 8px; }
tbody tr td:last-child  { border-radius: 0 8px 8px 0; }

/* Hover lift */
tbody tr:hover {
  background: rgba(255,255,255,0.042);
  transform: translateY(-2px);
  box-shadow:
    0 6px 18px rgba(0,0,0,0.35),
    inset 0 0 0 1px rgba(255,255,255,0.06);
}

/* Left edge indicator on hover — blue→teal gradient */
tbody tr td:first-child {
  position: relative;
}
tbody tr td:first-child::before {
  content: '';
  position: absolute;
  left: 0;
  top: 6px;
  bottom: 6px;
  width: 0px;
  border-radius: 2px;
  background: linear-gradient(180deg, #3BA3FF, #27D3A2);
  opacity: 0;
  transition: opacity 0.18s ease, width 0.18s ease;
}
tbody tr:hover td:first-child::before {
  width: 3px;
  opacity: 0.8;
}

/* Sheen sweep animation */
tbody tr::after {
  content: '';
  position: absolute;
  top: 0;
  left: -120%;
  height: 100%;
  width: 120%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255,255,255,0.03) 40%,
    rgba(255,255,255,0.08) 50%,
    rgba(255,255,255,0.03) 60%,
    transparent 100%
  );
  pointer-events: none;
  opacity: 0;
  border-radius: 8px;
}
tbody tr:hover::after {
  animation: rowSheen 800ms ease forwards;
  opacity: 1;
}
@keyframes rowSheen {
  0%   { left: -120%; }
  100% { left: 120%; }
}

/* Amount column emphasis */
tbody tr td:last-child,
tbody tr td[style*="text-align: right"] {
  font-weight: 700;
  letter-spacing: -0.01em;
}

/* Allocation pill styling */
tbody tr td .form-select,
tbody tr td select {
  font-size: 0.8rem !important;
  padding: 0.25rem 1.8rem 0.25rem 0.5rem !important;
  min-width: 120px;
  border-radius: 7px !important;
  border-color: rgba(96,165,250,0.2) !important;
  background-color: rgba(96,165,250,0.07) !important;
  color: var(--text-primary) !important;
}



.edit-btn { 
  background: none; 
  border: none; 
  color: var(--accent-green); 
  cursor: pointer; 
  padding: 0.2rem 0.5rem; 
  font-size: 0.82rem;
  font-family: inherit;
  transition: all var(--transition);
}
.edit-btn:hover { 
  color: var(--accent-blue);
  text-shadow: 0 0 8px var(--accent-blue-dim);
}

