.form-section { margin-bottom: var(--pad); }
.form-heading { margin: 0 0 8px; font-size: 15px; font-weight: 600; }
.form-hint { margin: 8px 0; font-size: 14px; color: var(--muted); }
.form-hint a { color: var(--gold); }

.customer-card { display: flex; align-items: center; gap: var(--gap); margin-bottom: 0; }
.customer-results { margin-bottom: var(--gap); }

.service-row { padding-left: 12px; padding-right: 12px; border-left: 3px solid transparent; }
.service-row.is-selected {
  border-left-color: var(--gold);
  background: rgba(212, 180, 131, .14);
}
.service-row.is-selected .row-title { color: var(--gold-strong); }
.service-row:focus-visible { outline: 2px solid var(--gold); outline-offset: -2px; }

.form-summary {
  display: flex; justify-content: space-between;
  padding: 12px;
  font-weight: 600;
  color: var(--gold-strong);
  font-variant-numeric: tabular-nums;
}

.field select {
  display: block;
  width: 100%;
  margin-top: 4px;
  padding: 11px 12px;
  /* unter 16px zoomt iOS Safari beim Fokus hinein */
  font-size: 16px;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
}
.field select:focus { outline: none; border-color: var(--gold); }

.overlap-hint {
  margin-bottom: var(--gap);
  padding: 10px 12px;
  border: 1px solid var(--gold);
  border-radius: var(--radius-sm);
  font-size: 14px;
  color: var(--gold-strong);
}
.overlap-hint:empty { display: none; }

/* Bezeichnung breit, Preis schmal nebeneinander */
.form-pair { display: grid; grid-template-columns: 2fr 1fr; gap: var(--gap); }

/* Reiter über der Leistungsliste; ohne Dienstleistungen bleibt die Zeile weg */
.service-tabs { margin-bottom: 8px; }
.service-tabs:empty { display: none; }
.form-pair-even { grid-template-columns: 1fr 1fr; }
/* Notiz vom letzten Termin: darf mehrzeilig sein, leer bleibt sie unsichtbar */
.last-note { white-space: pre-wrap; overflow-wrap: anywhere; padding: 10px 12px; border-left: 3px solid var(--gold); background: var(--surface); border-radius: var(--radius-sm); }
.last-note:empty { display: none; }
