/* Shared ticket editor layout: core metadata stays predictable while type-specific fields follow the description. */
.ticket-editor-modal {
  width: min(1120px, 100%);
  max-height: min(88vh, 820px);
}

.modal-form.ticket-editor-form,
.ticket-editor-context-fields {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.modal-form.ticket-editor-form {
  display: grid;
  align-items: start;
  gap: var(--field-row-gap);
}

.modal-form.ticket-editor-form > :is(.ticket-editor-subject, .ticket-editor-description, .ticket-editor-context-fields-host) {
  grid-column: 1 / -1;
}

.ticket-editor-context-fields {
  display: grid;
  align-items: start;
  gap: var(--field-row-gap);
}

.ticket-editor-context-fields > .full {
  grid-column: 1 / -1;
}

/* The editor keeps lookup guidance available in the control itself, so field rows stay aligned. */
.ticket-editor-form .ticket-editor-core-field,
.ticket-editor-context-fields > .field-block {
  min-width: 0;
}

.ticket-editor-form > .choice-dropdown-field > legend {
  margin-bottom: var(--field-label-gap);
}

@media (max-width: 980px) {
  .modal-form.ticket-editor-form,
  .ticket-editor-context-fields {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .ticket-editor-modal {
    width: min(100%, 720px);
  }

  .modal-form.ticket-editor-form,
  .ticket-editor-context-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .modal-form.ticket-editor-form,
  .ticket-editor-context-fields {
    grid-template-columns: minmax(0, 1fr);
  }
}
