.answer-file-list { display: grid; gap: 12px; margin-block: 16px; }
.answer-upload-item { flex-wrap: wrap; min-width: 0; }
.answer-upload-item > button { flex: 0 0 auto; }
.answer-upload-item .attachment-info > span { display: block; overflow-wrap: anywhere; }
.answer-upload-item .attachment-info { flex: 1 1 180px; min-width: 0; overflow-wrap: anywhere; }
.answer-upload-status, .answer-save-status, .answer-device-status { display: block; margin-block: 6px; }
.answer-upload-status { font-weight: 600; }
.answer-device-status, .answer-summary, .answer-submit-status, .answer-receipt { overflow-wrap: anywhere; }
.answer-conflict:not(:empty) { padding: 12px; border: 1px solid var(--line, #d7dce2); border-radius: 8px; margin-block: 12px; }
.answer-conflict button { margin: 4px; }
.answer-preview { width: 64px; height: 64px; object-fit: contain; border-radius: 6px; }
.answer-preview { flex: 0 0 64px; }
.answer-file-list:empty, .answer-device-status:empty, .answer-submit-status:empty { display: none; }
@media (max-width: 480px) {
  .answer-upload-item .attachment-info { flex-basis: calc(100% - 80px); }
  .answer-upload-item button { max-width: 100%; white-space: normal; }
}
