.privacy-lock {
  margin: 1rem 0;
  padding: .85rem 1rem;
  border-left: 4px solid #c93440;
  background: #fff5f5;
  color: #61131a;
}

.offer-grid,
.request-list {
  display: grid;
  gap: 1rem;
  margin-top: 1.5rem;
}

.offer-card {
  padding: 1.4rem;
  border: 1px solid #ced7e3;
  background: #fff;
}

.offer-card.selected {
  border: 2px solid #c93440;
  box-shadow: 0 8px 24px rgba(20, 28, 45, .08);
}

.offer-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .75rem;
  margin: 1rem 0;
}

.offer-facts div {
  padding: .8rem;
  background: #f3f6fa;
}

.offer-facts span,
.offer-facts strong {
  display: block;
}

.offer-facts span {
  margin-bottom: .3rem;
  color: #5a6b85;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.rate-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.selected-offer,
.selection-waiting {
  margin-top: 1rem;
  padding: 1rem;
  background: #fff4dc;
  border: 1px solid #edcc82;
}

.field-help {
  display: block;
  margin-top: .45rem;
  color: #5a6b85;
}

.status-selected { background: #fff0c7; color: #765000; }
.status-paid { background: #d8f8e7; color: #12663b; }
.status-declined,
.status-withdrawn { background: #eceff3; color: #596575; }

@media (max-width: 760px) {
  .offer-facts,
  .rate-grid { grid-template-columns: 1fr; }
}
