/* Ticket-only compatibility hotfix for the deployed admin bundle.
   The bounded column must overflow vertically, never shrink its records to
   the shared 44px control minimum. Legacy selectors can go when all clients
   use the named list/message classes from AdminTickets.tsx. */
.nimarko-admin .admin-ticket-list > .admin-ticket-list-item,
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 500px"] > button {
  flex-shrink: 0;
  height: auto;
  min-width: 0;
}

.nimarko-admin .admin-ticket-messages > div,
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 400px"] > div {
  flex-shrink: 0;
  min-width: 0;
}

.nimarko-admin .admin-ticket-list > .admin-ticket-list-item > div:first-child > span:first-child,
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 500px"] > button > div:first-child > span:first-child {
  min-width: 0;
}

.nimarko-admin .admin-ticket-list > .admin-ticket-list-item > div:nth-child(2),
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 500px"] > button > div:nth-child(2) {
  overflow-wrap: anywhere;
}

/* Keep the settings action whole; let it move to another row instead of
   squeezing its label into a narrow circle on phones. */
.nimarko-admin .admin-main .admin-ticket-header,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) > div:first-child {
  flex-wrap: wrap;
  gap: 12px;
}

.nimarko-admin .admin-main .admin-ticket-header > button,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) > div:first-child > button {
  flex: 0 0 auto;
  min-height: 44px;
  max-width: 100%;
  white-space: nowrap;
  overflow-wrap: normal;
}

/* Long subjects must not compete with two non-shrinking status badges for
   the same narrow line. These selectors also cover the deployed old markup. */
.nimarko-admin .admin-ticket-detail-heading,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) div:has(> h3) {
  min-width: 0;
  flex-wrap: wrap;
  gap: 8px;
}

.nimarko-admin .admin-ticket-detail-heading > h3,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) div:has(> h3) > h3 {
  flex: 1 1 180px;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.nimarko-admin .admin-ticket-detail-heading > div,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) div:has(> h3) > div {
  min-width: 0;
  max-width: 100%;
  flex-wrap: wrap;
}

.nimarko-admin .admin-ticket-detail-meta,
.nimarko-admin .admin-ticket-detail-meta > span,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) div:has(> h3) + div,
.nimarko-admin .admin-main > .space-y-6:has(.scrollbar-hide[style*="max-height: 500px"]) div:has(> h3) + div > span {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.nimarko-admin .admin-ticket-message-heading,
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 400px"] > div > div:first-child {
  min-width: 0;
  flex-wrap: wrap;
  gap: 4px 8px;
}

.nimarko-admin .admin-ticket-message-heading > span,
.nimarko-admin .admin-main .scrollbar-hide[style*="max-height: 400px"] > div > div:first-child > span {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
