.stages-panel { margin: 28px 0; padding: 28px; border: 1px solid #b9cdb7; border-radius: 10px; background: var(--paper); overflow-wrap: anywhere; }
.stages-panel h2 { margin-top: 0; }
.stages-panel form { margin: 20px 0; }
.stages-panel details { margin: 18px 0; }
.stage-records > details { border-top: 1px solid var(--line); padding-top: 18px; }
.stage-records > details > summary { font-weight: 650; }
.stage-content { padding: 8px 0 4px; }
.stage-status { color: var(--green); font-size: 14px; }
.stage-document { font: inherit; font-size: 14px; line-height: 1.8; white-space: pre-wrap; overflow-wrap: anywhere; max-height: 440px; overflow: auto; border: 1px solid var(--line); padding: 20px; background: #f7f8f3; border-radius: 6px; }
.stage-confirmation { padding: 20px; border-left: 3px solid var(--green); background: #f1f5ec; }
.stages-panel label { display: block; margin: 14px 0; }
.stages-panel input:not([type=checkbox]), .stages-panel textarea, .stages-panel select { display: block; width: 100%; min-width: 0; margin-top: 8px; font: inherit; padding: 10px; border: 1px solid #b9cdb7; border-radius: 5px; background: var(--paper); color: inherit; }
.stages-panel textarea { min-height: 84px; resize: vertical; }
.stages-panel button { max-width: 100%; white-space: normal; }
.next-instruction { border-top: 1px solid var(--line); padding-top: 16px; line-height: 1.8; }
.ticket-drafts > fieldset { min-width: 0; margin: 20px 0; border: 1px solid var(--line); border-radius: 6px; padding: 18px; }
.ticket-drafts fieldset fieldset { min-width: 0; border: 0; padding: 0; }
.ticket-drafts .check-label { display: flex; align-items: flex-start; gap: 10px; }
@media (max-width: 600px) {
  .stages-panel { padding: 18px 14px; }
  .stage-document, .stage-confirmation, .ticket-drafts > fieldset { padding: 14px; }
}
