.disputes-panel {
  overflow: hidden;
}

.disputes-toolbar {
  display: flex;
}

#dispute-filter-count {
  min-width: 20px;
  height: 20px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  color: #fff;
  background: var(--accent-solid);
  font-size: 11px;
  font-weight: 700;
}

#dispute-filter-count[hidden] { display: none; }

.dispute-table-head,
.dispute-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.35fr) minmax(145px, .9fr) minmax(150px, .72fr) minmax(190px, .95fr) minmax(160px, .8fr) 28px;
  gap: 12px;
  align-items: center;
}

.dispute-table-head {
  grid-template-columns: minmax(220px, 1.35fr) minmax(145px, .9fr) minmax(150px, .72fr) minmax(190px, .95fr) minmax(160px, .8fr) 28px;
}

.dispute-row {
  width: 100%;
  min-height: 58px;
  padding: 7px 11px;
  border: 0;
  border-bottom: 1px solid var(--ui-border);
  background: transparent;
  color: var(--ui-text);
  font: inherit;
  font-size: 13px;
  text-align: left;
  cursor: pointer;
  transition: background-color 160ms ease;
}

.dispute-row:last-child { border-bottom: 0; }
.dispute-row:hover,
.dispute-row.entity-drawer-source { background: var(--ui-hover); }
.dispute-row:focus-visible { outline: 2px solid var(--accent-solid); outline-offset: -2px; }
.dispute-row > span { min-width: 0; }

.dispute-operation {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dispute-operation b {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
}

.dispute-operation small { font-size: 11px; }

.dispute-operation small,
.dispute-row > span:nth-child(2),
.dispute-row > span:nth-child(5) { color: var(--ui-text-secondary); }

.dispute-chevron {
  color: var(--ui-text-secondary);
  font-size: 26px;
  font-weight: 400;
}

.review-status-chip,
.review-result-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px;
  border-radius: 8px;
  font-style: normal;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.2;
}

.review-status-chip.none { color: var(--ui-text-secondary); background: var(--control-bg); }
.review-status-chip.under_review { color: #8b5cf6; background: color-mix(in srgb, #8b5cf6 15%, transparent); }
.review-status-chip.completed,
.review-result-chip.full_compensation { color: var(--success-text); background: var(--success-soft); }
.review-result-chip.partial_compensation { color: var(--warning-text); background: var(--warning-soft); }
.review-result-chip.rejected { color: var(--danger-text); background: var(--danger-soft); }

.operation-dispute-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid var(--ui-border);
  border-radius: 12px;
  background: var(--ui-surface);
}

.operation-evidence-group {
  padding-bottom: 12px;
}

.operation-evidence-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--ui-border);
}

.operation-evidence-facts > span {
  min-width: 0;
  padding: 9px 8px;
  border-right: 1px solid var(--ui-border);
}

.operation-evidence-facts > span:nth-child(odd) { padding-left: 0; }
.operation-evidence-facts > span:nth-child(even) { padding-right: 0; border-right: 0; }
.operation-evidence-facts > span:nth-child(-n+2) { border-bottom: 1px solid var(--ui-border); }

.operation-evidence-facts small,
.operation-evidence-facts strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.operation-evidence-facts small {
  color: var(--ui-text-subtle);
  font-size: 10px;
}

.operation-evidence-facts strong {
  margin-top: 3px;
  color: var(--ui-text);
  font-size: 12px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.operation-evidence-timeline {
  position: relative;
  height: 7px;
  margin-top: 12px;
  border-radius: 4px;
  background: var(--ui-surface-soft);
}

.operation-evidence-timeline > span {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: var(--accent-solid);
}

.operation-evidence-timeline i {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 3px;
  height: 13px;
  border: 2px solid var(--ui-surface);
  border-radius: 2px;
  background: var(--video-pause);
  transform: translate(-50%, -50%);
}

.operation-dispute-summary > span {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.operation-dispute-summary small { color: var(--ui-text-secondary); }

.operation-review-head .review-status-stack {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.entity-drawer .operation-review-head {
  align-items: flex-start;
  flex-wrap: wrap;
}

.entity-drawer .operation-review-head > div,
.entity-drawer .review-link-row > span,
.entity-drawer .incident-event-row > span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.entity-drawer .operation-review-form {
  grid-template-columns: minmax(0, 1fr) 96px;
}

.entity-drawer .operation-review-form > select:first-child {
  grid-column: 1 / -1;
}

.entity-drawer .operation-review-form > button {
  width: 100%;
  min-width: 0;
  padding-inline: 8px;
}

.entity-drawer .operation-review-form .review-download-permission {
  grid-column: 1 / -1;
}

.entity-drawer .review-created-link {
  grid-template-columns: minmax(0, 1fr);
}

.entity-drawer .review-link-history {
  min-width: 0;
  border-top: 1px solid var(--ui-border);
  border-bottom: 1px solid var(--ui-border);
}

.entity-drawer .review-link-history > summary {
  min-height: 42px;
  padding: 9px 2px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: var(--ui-text-secondary);
  cursor: pointer;
  list-style: none;
  font-size: 13px;
  font-weight: 650;
}

.entity-drawer .review-link-history > summary::-webkit-details-marker { display: none; }

.entity-drawer .review-link-history > summary::after {
  content: '›';
  margin-left: 2px;
  color: var(--ui-text-subtle);
  font-size: 20px;
  line-height: 1;
  transition: transform 160ms ease;
}

.entity-drawer .review-link-history[open] > summary::after { transform: rotate(90deg); }

.entity-drawer .review-link-history > summary b {
  min-width: 24px;
  margin-left: auto;
  padding: 3px 7px;
  border-radius: 6px;
  color: var(--ui-text-secondary);
  background: var(--control-bg);
  text-align: center;
  font-size: 11px;
  font-weight: 700;
}

.entity-drawer .review-link-list {
  gap: 0;
  padding-bottom: 5px;
}

.entity-drawer .review-link-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.entity-drawer .review-link-row button {
  width: auto;
  min-width: 82px;
  max-width: 100%;
  justify-self: end;
  white-space: nowrap;
}

.entity-drawer .dispute-complete-form {
  grid-template-columns: minmax(0, 1fr);
}

.entity-drawer .entity-property-row {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: start;
}

.entity-drawer .entity-property-row strong {
  max-width: none;
  min-width: 0;
  overflow-wrap: anywhere;
}

.entity-drawer .entity-drawer-actions {
  flex-wrap: wrap;
}

.entity-drawer .entity-drawer-actions button {
  min-width: 0;
  flex: 1 1 auto;
}

.entity-drawer .operation-download-head {
  align-items: flex-start;
}

.entity-drawer .operation-download-head > span {
  min-width: 0;
}

.entity-drawer .operation-download-camera > summary > span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}

.dispute-complete-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
  padding-top: 16px;
  border-top: 1px solid var(--ui-border);
}

.dispute-complete-form label {
  display: flex;
  flex-direction: column;
  gap: 7px;
  color: var(--ui-text-secondary);
  font-size: 13px;
}

.dispute-complete-form select {
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--ui-border);
  border-radius: 10px;
  background: var(--control-bg);
  color: var(--ui-text);
  font: inherit;
}

@media (min-width: 861px) and (max-width: 1239px) {
  .dispute-table-head,
  .dispute-row {
    grid-template-columns: minmax(190px, 1.25fr) minmax(120px, .8fr) minmax(135px, .72fr) minmax(175px, .9fr) minmax(145px, .75fr) 24px;
  }
}

@media (max-width: 760px) {
  .disputes-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .dispute-table-head {
    min-height: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding: 7px 0 11px;
    overflow: visible;
  }

  .dispute-table-head .archive-column-filter {
    width: 100%;
    min-width: 0;
    padding: 3px 8px;
  }

  .dispute-row {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px 16px;
    min-height: 0;
    padding: 10px 12px;
  }
  .dispute-row > span:nth-child(2) { grid-column: 1; }
  .dispute-row > span:nth-child(3) { grid-column: 2; grid-row: 1; }
  .dispute-row > span:nth-child(4) { grid-column: 1 / -1; }
  .dispute-row > span:nth-child(5) { grid-column: 1; }
  .dispute-chevron { grid-column: 2; grid-row: 2 / span 3; align-self: center; }
  .dispute-table-head > span { display: none; }
}

@media (max-width: 340px) {
  .dispute-table-head { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 600px) {
  body.role-admin .mobile-nav { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  body.role-admin .mobile-nav .nav-btn { min-width: 0; padding-inline: 4px; }
  .dispute-complete-form { grid-template-columns: 1fr; }
  .operation-dispute-summary { align-items: stretch; flex-direction: column; }
}
