/* Detail list for show pages */
.detail-list {
  display: grid;
  gap: var(--space-md);
}

.detail-list__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-sm) 0;
  border-bottom: 1px dashed var(--border-subtle);
}

.detail-list__item:last-child {
  border-bottom: none;
}

.detail-list__term {
  color: var(--text-muted);
  font-size: var(--text-sm);
}

.detail-list__value {
  font-weight: 500;
}

@media (max-width: 767px) {
  .detail-list__item {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-xs);
  }
}

/* Section header with title + action */
.section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-md);
  padding-bottom: var(--space-sm);
  border-bottom: 1px solid var(--border-subtle);
}

/* ── Form sections: fieldset with accent stripe ── */
.form-fieldset {
  border: none;
  padding: var(--space-xl) var(--space-lg);
  margin-bottom: var(--space-xl);
  background: var(--surface);
  border-radius: var(--radius-lg);
  border-left: 3px solid var(--border);
  position: relative;
}

.form-fieldset__legend {
  font-size: var(--text-xs);
  font-weight: var(--font-semibold);
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0;
  margin-bottom: var(--space-lg);
}

/* Remove extra margin on last group inside fieldset */
.form-fieldset > .form-group:last-child,
.form-fieldset > .form-row:last-child .form-group {
  margin-bottom: 0;
}

/* Inputs inside fieldsets: bump bg for contrast */
.form-fieldset .form-input,
.form-fieldset .form-select {
  background-color: var(--surface-3);
}

.form-fieldset .form-input:focus,
.form-fieldset .form-select:focus {
  background-color: var(--surface-2);
}

@media (max-width: 640px) {
  .form-fieldset {
    padding: var(--space-md);
    padding-top: var(--space-sm);
    margin-left: calc(-1 * var(--space-sm));
    margin-right: calc(-1 * var(--space-sm));
    border-radius: var(--radius-md);
  }
}

/* Inline assign form */
.assign-form {
  margin-bottom: var(--space-md);
}

.assign-form__inner {
  display: flex;
  gap: var(--space-sm);
  align-items: center;
}

.assign-form__inner .form-select {
  flex: 1;
}

@media (max-width: 640px) {
  .assign-form__inner {
    flex-direction: column;
    align-items: stretch;
  }
}

/* Cards grid */
.cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
  gap: var(--space-md);
}

/* ========================================
   Filter tabs — shared segmented control
   ======================================== */
.filter-tabs {
  display: flex;
  gap: 2px;
  padding: 3px;
  background: var(--surface);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-xl);
  overflow-x: auto;
}

.filter-tab {
  padding: 8px var(--space-md);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  color: var(--text-muted);
  text-decoration: none;
  border-radius: calc(var(--radius-md) - 2px);
  transition: color var(--transition-fast), background var(--transition-fast);
  white-space: nowrap;
}

.filter-tab:hover {
  color: var(--text);
  background: var(--surface-2);
}

.filter-tab--active {
  color: var(--text);
  background: var(--surface-2);
  font-weight: var(--font-semibold);
  box-shadow: var(--shadow-sm);
}

.card__meta {
  display: flex;
  gap: var(--space-md);
  margin-top: var(--space-sm);
  font-size: var(--text-sm);
  color: var(--text-muted);
}
