.external-session-card,
.external-session-card .session-box,
.external-calendar-day,
.job-card,
.job-workspace-panel,
.meet-greet-card {
  min-width: 0;
}

.external-session-card .session-box > *,
.external-calendar-day > *,
.external-notes-full,
.meet-greet-card > * {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.external-notes-preview {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  white-space: normal;
}

.external-notes-details {
  width: 100%;
}

.external-notes-details summary {
  cursor: pointer;
  font-weight: 700;
  width: fit-content;
}

.external-notes-full {
  margin-top: 0.65rem;
  max-height: 18rem;
  overflow: auto;
  white-space: pre-wrap;
}

.external-join-link {
  align-self: flex-start;
}

/* The Current/Past switch is the single history control for participant jobs. */
#content > .action-banner > .control-group > [data-participant-job-view="archived"] {
  display: none;
}

/* Keep the listing header visually separate from the primary support-job action panel. */
#content > .action-banner + .support-job-create + .section-stack {
  margin-top: 12px;
}

#content > .action-banner + .support-job-create + .section-stack > .section-heading {
  align-items: flex-start;
}

#content > .action-banner + .support-job-create + .section-stack > .section-heading .view-toggle {
  flex: 0 0 auto;
}

.job-list.workflow-detail-open > .job-card:not(.workflow-selected) {
  display: none;
}

.job-card.workflow-summary .workflow-job-brief {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.workflow-selected {
  width: 100%;
}

.job-workspace-panel {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid currentColor;
}

.job-workspace-header,
.workflow-counts,
.workflow-lifecycle,
.meet-greet-heading,
.meet-greet-facts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
}

.job-workspace-header {
  justify-content: space-between;
}

.workflow-counts span,
.workflow-lifecycle span,
.meet-greet-badge,
.free-badge {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.3rem 0.65rem;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-weight: 700;
}

.job-workspace-section {
  display: grid;
  gap: 0.75rem;
}

.job-workspace-section h4 {
  margin: 0;
}

.meet-greet-list {
  display: grid;
  gap: 0.8rem;
}

.meet-greet-card {
  display: grid;
  gap: 0.7rem;
  padding: 1rem;
  border: 1px solid currentColor;
  border-radius: 0.9rem;
}

.meet-greet-card.cancelled {
  opacity: 0.68;
}

.meet-greet-facts span,
.meet-greet-facts a {
  overflow-wrap: anywhere;
}

.meet-greet-form {
  display: grid;
  gap: 0.85rem;
  margin-top: 0.8rem;
  padding: 1rem;
  border: 1px solid currentColor;
  border-radius: 0.9rem;
}

.meet-greet-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.8rem;
}

.meet-greet-form label {
  min-width: 0;
}

.meet-greet-form input,
.meet-greet-form select,
.meet-greet-form textarea {
  width: 100%;
  min-width: 0;
}

.workflow-hidden {
  display: none !important;
}

@media (max-width: 760px) {
  .meet-greet-form-grid {
    grid-template-columns: 1fr;
  }

  .job-workspace-header,
  .workflow-counts,
  .workflow-lifecycle,
  .meet-greet-heading,
  .meet-greet-facts {
    align-items: stretch;
  }

  .workflow-counts span,
  .workflow-lifecycle span {
    width: 100%;
  }
}
