.bookingEntry {
  background: var(--ff-surface);
  border: 1px solid var(--ff-border);
  border-radius: var(--ff-radius-card);
  padding: var(--ff-space-6);
  color: var(--ff-text-primary);
  box-shadow: var(--ff-shadow-card);
}
.bookingEntryCaption {
  margin: 0 0 var(--ff-space-4);
  font-size: var(--ff-text-meta-desktop);
  line-height: var(--ff-leading-meta);
  color: var(--ff-text-secondary);
}
.bookingEntryGrid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: var(--ff-space-4);
  align-items: stretch;
}
.bookingEntrySide {
  border-radius: var(--ff-radius-lg);
  background: var(--ff-surface-soft);
  border: 1px solid var(--ff-border);
  padding: var(--ff-space-5);
  min-width: 0;
}
.bookingEntryLabel {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin-bottom: var(--ff-space-3);
  padding: 0 10px;
  border-radius: var(--ff-radius-pill);
  background: var(--ff-primary-soft);
  color: var(--ff-primary);
  font-size: var(--ff-text-meta-desktop);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.bookingEntryLine {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--ff-space-4);
  align-items: baseline;
  padding: var(--ff-space-3) 0;
  border-top: 1px solid var(--ff-border);
}
.bookingEntryLine:first-of-type { border-top: 0; }
.bookingEntryAccount { min-width: 0; line-height: var(--ff-leading-card); color: var(--ff-text-primary); }
.bookingEntryAmount { white-space: nowrap; text-align: right; font-variant-numeric: tabular-nums; font-weight: 750; }
.bookingEntryConnector { align-self: center; color: var(--ff-text-secondary); font-weight: 800; }
@media (max-width: 560px) {
  .bookingEntry { padding: var(--ff-space-5); border-radius: var(--ff-radius-lg); }
  .bookingEntryGrid { grid-template-columns: 1fr; }
  .bookingEntryConnector { justify-self: start; padding-left: var(--ff-space-1); }
  .bookingEntryLine { grid-template-columns: 1fr; gap: var(--ff-space-1); }
  .bookingEntryAmount { text-align: left; font-weight: 800; }
}
