.competitor-actions {
  display: flex;
  gap: 5px;
  margin-left: 4px;
}

.competitor-offers { margin-top: 15px; padding: 20px; }
.competitor-offers-list { display: grid; gap: 8px; margin-top: 15px; }
.competitor-offer {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px 13px;
  align-items: center;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--sand);
}
.competitor-offer b, .competitor-offer small { display: block; }
.competitor-offer b { font-size: 12px; }
.competitor-offer small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.competitor-offer > strong { text-align: right; font-size: 13px; font-variant-numeric: tabular-nums; }
.competitor-offer > strong small { text-decoration: line-through; font-weight: 500; }
.competitor-offer em { grid-column: 2 / -1; color: var(--muted); font-size: 10px; font-style: normal; }
.compare-table .margin-negative { color: #a34e6a; font-weight: 700; }
.compare-table .margin-warning { color: #9d6c19; font-weight: 700; }

@media (max-width: 650px) {
  .competitor-actions { margin-left: auto; }
  .competitor-offer { grid-template-columns: 1fr auto; }
  .competitor-offer > .offer { grid-column: 1 / -1; width: fit-content; }
  .competitor-offer em { grid-column: 1 / -1; }
}
