
.page-title {
  font-size: var(--text-3xl);
  font-weight: 700;
  color: var(--color-neutral-900);
  margin-bottom: var(--space-6);
}

.section-title {
  font-size: var(--text-xl);
  font-weight: 600;
  margin-bottom: var(--space-4);
  color: var(--color-neutral-900);
}

.btn-secondary {
  background-color: transparent;
  border: 1px solid var(--color-neutral-200);
  color: var(--color-neutral-900);
}

.btn-secondary:hover {
  background-color: var(--color-neutral-50);
}

.btn-sm {
  height: 32px;
  padding: 0 var(--space-3);
  font-size: var(--text-sm);
}

/* Tables */
.table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  margin-bottom: 0; /* Remove bottom margin if inside card */
}

.table th {
  background-color: var(--color-neutral-50);
  padding: var(--space-3) var(--space-4);
  font-weight: 600;
  color: var(--color-neutral-900);
  border-bottom: 1px solid var(--color-neutral-200);
  white-space: nowrap;
}

.table td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-neutral-200);
  color: var(--color-neutral-900);
  vertical-align: middle;
}

.table-hover tbody tr:hover {
  background-color: var(--color-neutral-50);
}


/* Pagination */
.pagy.series-nav {
  display: flex;
  gap: var(--space-2);
  justify-content: center;
  align-items: center;
  margin-top: var(--space-6);
}

.pagy.series-nav a, .pagy.series-nav span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  padding: 0 var(--space-2);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  text-decoration: none;
  border: 1px solid var(--color-neutral-200);
  color: var(--color-neutral-900);
  transition: all 0.2s ease;
}

.pagy.series-nav a:hover:not(.current) {
  background-color: var(--color-neutral-50);
  border-color: var(--color-neutral-300);
}

.pagy.series-nav .current {
  background-color: var(--color-primary-main);
  color: var(--color-neutral-white);
  border-color: var(--color-primary-main);
  cursor: default;
}

.pagy.series-nav .gap {
  border: none;
  padding: 0 var(--space-2);
  color: var(--color-neutral-500);
}

.pagy.series-nav .disabled {
  color: var(--color-neutral-400);
  border-color: var(--color-neutral-100);
  cursor: not-allowed;
}

/* Search Form Container */
.search-form-container {
  background-color: var(--color-neutral-50);
  padding: var(--space-6);
  border: 1px solid var(--color-neutral-200);
  border-radius: var(--radius-lg);
  margin-bottom: var(--space-6);
}

.search-form-grid {
  display: flex;
  gap: var(--space-4);
  align-items: flex-end;
  flex-wrap: wrap;
}

.search-form-grid .form-group {
  margin-bottom: 0;
}

.table-card {
  overflow-x: auto;
  padding: 0;
}
