/* Consistent compact record lists across the application. */
body[data-path="/claims"] .claim-list-page > .d-grid,
body[data-path="/approvals"] .review-list,
body[data-path="/notifications"] .notification-list,
body[data-path="/trips"] .trip-card-list {
  grid-template-columns: 1fr !important;
  gap: 6px !important;
}

body[data-path="/claims"] .claim-list-page article.claim-card {
  min-height: 70px;
  padding: 9px 13px;
  border-top-width: 1px;
  border-left: 4px solid #1769e0;
  border-radius: 13px;
  box-shadow: 0 4px 14px rgba(18,50,86,.05);
}

body[data-path="/claims"] .claims-compact-list {
  gap: 6px !important;
}

body[data-path="/claims"] .claim-list-page .claim-compact-row {
  display: grid;
  grid-template-columns: minmax(260px,1fr) 150px 105px auto;
  align-items: center;
  gap: 12px;
  min-height: 58px;
  padding: 7px 12px;
}

body[data-path="/claims"] .claim-row-reference,
body[data-path="/claims"] .claim-row-amount {
  min-width: 0;
}

body[data-path="/claims"] .claim-row-reference small {
  display: block;
  overflow: hidden;
  font-size: .76rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-path="/claims"] .claim-row-reference .claim-row-remark {
  margin-top: 2px;
  overflow: visible;
  color: #52677d;
  line-height: 1.35;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
}

body[data-path="/claims"] .claim-row-remark b { color: #9a5a00; }

body[data-path="/claims"] .claim-row-amount {
  display: grid;
  line-height: 1.2;
}

body[data-path="/claims"] .claim-row-amount strong {
  color: var(--navy);
  font-size: 1rem;
}

body[data-path="/claims"] .claim-row-actions {
  display: flex;
  justify-content: flex-end;
  gap: 5px;
}

body[data-path="/claims"] .claims-filter-panel {
  padding: 11px 14px;
}

body[data-path="/claims"] .claims-filter-panel .form-control,
body[data-path="/claims"] .claims-filter-panel .form-select,
body[data-path="/claims"] .claims-filter-panel .btn {
  min-height: 42px;
}

body[data-path="/claims"] .claim-list-page article.claim-card .mt-3 {
  margin-top: 5px !important;
}

body[data-path="/claims"] .claim-list-page article.claim-card .btn {
  min-height: 32px;
  padding: .3rem .62rem;
  font-size: .74rem;
}

body[data-path="/trips"] .trip-mobile-card {
  min-height: 0;
  padding: 9px 12px;
  border-radius: 11px;
  box-shadow: 0 4px 14px rgba(18,50,86,.05);
}

body[data-path="/trips"] .trip-mobile-card h2 {
  margin: 3px 0 0;
  font-size: .92rem;
}

body[data-path="/trips"] .trip-card-stats {
  margin-top: 5px;
  padding-top: 5px;
  font-size: .68rem;
}

body[data-path="/approvals"] .peer-review-list-row {
  min-height: 66px;
  padding: 8px 12px 8px 16px;
  gap: 12px;
}

body[data-path="/approvals"] .peer-list-employee .avatar {
  flex-basis: 34px;
  width: 34px;
  height: 34px;
}

body[data-path="/approvals"] .peer-list-action {
  width: 32px;
  height: 32px;
  min-height: 32px;
  border-radius: 8px;
  font-size: .95rem;
}

body[data-path="/notifications"] .notification-row {
  min-height: 52px;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 11px;
}

body[data-path="/notifications"] .notification-row strong {
  font-size: .83rem;
}

body[data-path="/notifications"] .notification-message {
  font-size: .77rem;
}

@media (max-width: 575.98px) {
  body[data-path="/claims"] .claim-list-page article.claim-card { padding: 8px 10px; }
  body[data-path="/claims"] .claim-list-page .claim-compact-row {
    grid-template-columns: minmax(0,1fr) auto;
    gap: 6px 10px;
    min-height: 76px;
  }
  body[data-path="/claims"] .claim-row-reference { grid-column: 1; grid-row: 1; }
  body[data-path="/claims"] .claim-compact-row > .status-badge { grid-column: 2; grid-row: 1; }
  body[data-path="/claims"] .claim-row-amount { grid-column: 1; grid-row: 2; }
  body[data-path="/claims"] .claim-row-actions { grid-column: 2; grid-row: 2; }
  body[data-path="/claims"] .claim-row-actions .btn { min-width: 58px; }
  body[data-path="/claims"] .claims-filter-panel { padding: 9px; }
  body[data-path="/trips"] .trip-mobile-card { padding: 8px 10px; }
  body[data-path="/approvals"] .peer-review-list-row { padding: 8px 9px 8px 13px; }
  body[data-path="/notifications"] .notification-row { padding: 8px 9px; }
}

/* Remaining record presenters use the same compact visual language. */
.record-card-grid .compact-record-card {
  display: grid;
  grid-template-columns: minmax(180px,.75fr) minmax(220px,1.5fr) minmax(150px,auto);
  align-items: center;
  gap: 10px 18px;
  min-height: 58px;
  padding: 8px 12px;
  border-left: 4px solid #1769e0;
  border-radius: 11px;
  box-shadow: 0 3px 11px rgba(18,50,86,.05);
}

.record-card-grid .compact-record-card > .d-flex:first-child {
  align-items: center;
  gap: 8px;
}

.record-card-grid .compact-record-card .section-title,
.record-card-grid .compact-record-card > p,
.record-card-grid .compact-record-card .meta-grid {
  margin: 0 !important;
}

.record-card-grid .compact-record-card > p {
  overflow: hidden;
  font-size: .78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.record-card-grid .compact-record-card > .row,
.record-card-grid .compact-record-card > .btn {
  width: 100%;
  margin: 0;
}

.record-card-grid .compact-record-card .btn {
  min-height: 32px;
  padding: .3rem .55rem;
  font-size: .72rem;
}

.record-card-grid .department-record-card {
  grid-template-columns: minmax(180px,.75fr) minmax(300px,1.5fr) minmax(150px,auto);
}

.record-card-grid .department-record-card .meta-grid {
  gap: 5px 14px;
}

body[data-path^="/claims/"] .expense-result-line {
  padding: 9px 12px;
  border-radius: 11px;
}

body[data-path^="/claims/"] .expense-result-line .meta-grid {
  gap: 6px 12px;
}

body[data-path^="/trips/"] .category-summary-list > div,
body[data-path^="/trips/"] .employee-summary-lines a,
body[data-path="/dashboard"] .admin-summary-list > a,
body[data-path="/dashboard"] .admin-summary-list > div {
  padding-top: 6px;
  padding-bottom: 6px;
}

body[data-path^="/trips/"] .category-summary-list small,
body[data-path^="/trips/"] .employee-summary-lines small {
  font-size: .7rem;
}

body[data-path="/admin/users"] .table > :not(caption) > * > *,
body[data-path="/admin/projects"] .table > :not(caption) > * > *,
body[data-path="/admin/audit-logs"] .table > :not(caption) > * > *,
body[data-path^="/reports"] .table > :not(caption) > * > * {
  padding-top: .5rem;
  padding-bottom: .5rem;
}

@media (max-width: 767.98px) {
  .record-card-grid .compact-record-card,
  .record-card-grid .department-record-card {
    grid-template-columns: minmax(0,1fr) auto;
    gap: 5px 9px;
    padding: 8px 10px;
  }
  .record-card-grid .compact-record-card > p,
  .record-card-grid .compact-record-card > .meta-grid {
    grid-column: 1 / -1;
  }
  .record-card-grid .compact-record-card > .row,
  .record-card-grid .compact-record-card > .btn {
    grid-column: 2;
    grid-row: 1;
    min-width: 120px;
  }
  .record-card-grid .compact-record-card > .d-flex:first-child {
    grid-column: 1;
  }
  body[data-path="/admin/users"] table tr,
  body[data-path="/admin/projects"] table tr,
  body[data-path="/admin/audit-logs"] table tr {
    margin: 0 0 6px;
    padding: 7px 10px;
    border-radius: 11px;
  }
  body[data-path="/admin/users"] table td,
  body[data-path="/admin/projects"] table td,
  body[data-path="/admin/audit-logs"] table td {
    padding: 5px 0 !important;
  }
}
