.parcel-module { min-width: 0; color: #26323b; }
.parcel-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.parcel-heading h3 { font-size: 21px; margin: 0; }
.parcel-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); border-block: 1px solid #dce2e5; margin: 0 0 20px; }
.parcel-metrics div { padding: 15px 18px; border-right: 1px solid #dce2e5; min-width: 0; }
.parcel-metrics div:last-child { border: 0; }
.parcel-metrics dt { color: #586771; font-size: 13px; overflow-wrap: anywhere; }
.parcel-metrics dd { margin: 6px 0 0; font-size: 25px; font-weight: 700; color: #253c43; }
.parcel-filters { display: grid; grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr); gap: 16px; margin-bottom: 18px; }
.parcel-filters label, .parcel-fields label { display: grid; gap: 6px; font-size: 14px; font-weight: 600; min-width: 0; }
.parcel-module input, .parcel-module select, .parcel-dialog input, .parcel-dialog select, .parcel-dialog textarea { width: 100%; max-width: 100%; min-width: 0; padding: 10px; border: 1px solid #bec9cf; border-radius: 5px; background: white; color: #26323b; font: inherit; }
.parcel-dialog textarea { resize: vertical; min-height: 90px; }
.parcel-table { min-width: 0; width: 100%; table-layout: fixed; border-collapse: collapse; }
.parcel-table th, .parcel-table td { padding: 13px 10px; white-space: normal; overflow-wrap: anywhere; vertical-align: top; border-bottom: 1px solid #e0e6e9; text-align: left; }
.parcel-table th { background: #f2f5f6; font-size: 12px; color: #57656e; }
.parcel-table th:nth-child(2) { width: 23%; }
.parcel-table td > strong, .parcel-table td > span, .parcel-table small { display: block; margin-bottom: 4px; }
.parcel-table small, .parcel-dialog small { color: #5b6870; }
.parcel-module .parcel-status { display: inline-block; border-radius: 4px; padding: 4px 8px; font-size: 12px; font-weight: 700; }
.parcel-open { background: #fff0d5; color: #794701; }
.parcel-investigating { background: #e4eff9; color: #27557c; }
.parcel-found { background: #ddf3e8; color: #1b6142; }
.parcel-closed { background: #e9eeed; color: #42564e; }
.parcel-cancelled { background: #fce6e4; color: #8b2921; }
.parcel-overdue { color: #b72d2d; }
.parcel-pages { display: flex; align-items: center; justify-content: flex-end; gap: 14px; margin-top: 16px; font-size: 13px; }
.parcel-table button { white-space: normal; width: 100%; min-height: 36px; }
.parcel-dialog { width: min(940px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: auto; border: 1px solid #d6dee2; border-radius: 8px; padding: 24px; color: #26323b; background: #fff; }
.parcel-dialog::backdrop { background: rgb(12 21 26 / 55%); }
.parcel-dialog-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid #dde4e7; }
.parcel-dialog-head h3 { font-size: 22px; margin: 0 0 6px; overflow-wrap: anywhere; }
.parcel-dialog-head button { width: 38px; height: 38px; flex-shrink: 0; font-size: 22px; padding: 0; }
.parcel-fields { border: 0; padding: 20px 0 0; margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; min-width: 0; }
.parcel-wide { grid-column: 1 / -1; }
.parcel-dialog-actions { display: flex; justify-content: flex-end; gap: 14px; padding: 12px 0; }
.parcel-dialog [role=alert] { color: #a82b2b; white-space: pre-wrap; overflow-wrap: anywhere; }
.parcel-history { margin-top: 18px; border-top: 1px solid #dde4e7; }
.parcel-history article { padding: 12px 0; border-bottom: 1px solid #e7ebed; }
.parcel-history small { display: block; margin-top: 4px; }
.parcel-history p { white-space: pre-wrap; overflow-wrap: anywhere; margin: 8px 0 0; }
@media (max-width: 760px) {
  .parcel-heading { align-items: flex-start; flex-wrap: wrap; }
  .parcel-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .parcel-metrics div { padding: 12px 8px; border: 0; }
  .parcel-filters, .parcel-fields { grid-template-columns: minmax(0, 1fr); }
  .parcel-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); padding: 16px; }
  .parcel-table, .parcel-table tbody { display: block; }
  .parcel-table thead { display: none; }
  .parcel-table tr { display: block; border-bottom: 1px solid #bdcbd1; padding-block: 12px; }
  .parcel-table td { display: block; padding: 5px 0; border: 0; }
  .parcel-table td::before { content: attr(data-label); display: block; font-size: 12px; color: #647580; margin-bottom: 4px; }
  .parcel-table button { width: auto; }
}
