/* Kasse und Stand einer Buchung. Farben und Formen aus seite.css (docs/gestaltung.md). */

.abstand-oben { margin-top: 12px; }
.abstand-gross { margin-top: 36px; }
.breit { width: 100%; font: inherit; font-weight: 700; cursor: pointer; }
button.knopf.umriss { background: none; }
.gross-text { font-size: 20px; line-height: 1.4; }
/* Absagen und verschieben, unter der Bestätigung abgesetzt */
.absage-teil { display: grid; gap: 12px; margin-top: 36px; padding-top: 28px; border-top: 1.5px solid var(--linie); }
.fehler-kasten { padding: 14px 16px; border-radius: 18px; border: 2px solid #a8321f; color: #a8321f; font-weight: 700; margin-bottom: 20px; }
.abschnitt > .hinweis { margin-bottom: 20px; }

/* Gutschein an der Kasse */
#gutschein { margin: 28px 0 0; }
.gutschein-form .feld { display: grid; gap: 8px; font-weight: 700; }
.gutschein-zeile { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.gutschein-zeile input { font: inherit; font-weight: 400; color: var(--dunkel); width: 100%; min-height: 56px; padding: 12px 16px;
  border: 1.5px solid #bfa996; border-radius: 16px; background: #fff; text-transform: uppercase; letter-spacing: .05em; }
.gutschein-zeile input::placeholder { text-transform: none; letter-spacing: 0; }
.gutschein-zeile input[aria-invalid="true"] { border-color: #a8321f; }
.gutschein-zeile .knopf { font: inherit; font-weight: 700; cursor: pointer; background: none; min-height: 56px; padding: 0 20px; }
.gutschein-form .feld-fehler { margin-top: 8px; }
.gutschein-eingeloest { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 6px 16px;
  padding: 14px 18px; border-radius: 18px; background: var(--flaeche); font-weight: 700; }
.text-knopf { font: inherit; font-size: 17px; font-weight: 400; color: var(--dunkel); background: none; border: 0; padding: 6px 0;
  text-decoration: underline; cursor: pointer; }

/* Rechtliche Hinweise und Zustimmung direkt vor dem Bezahlknopf */
.rechtlich { font-size: 17px; margin: 28px 0 20px; }
.kaestchen { margin: 22px 0 26px; font-size: 17px; }
.kaestchen label { display: grid; grid-template-columns: 28px 1fr; gap: 12px; align-items: start; cursor: pointer; }
.kaestchen input { width: 24px; height: 24px; margin-top: 3px; accent-color: var(--dunkel); }
.kaestchen [aria-invalid="true"] { outline: 2px solid #a8321f; outline-offset: 2px; }
.kaestchen .feld-fehler { margin-top: 10px; }

.kennwort { background: var(--flaeche); border-radius: var(--rund); padding: 22px; }
.kennwort-wort { font-family: var(--titel); font-weight: 800; font-size: 34px; line-height: 1.15; margin: 2px 0 10px; overflow-wrap: anywhere; }

/* Gutschein-Bestellung: der Gruß mit seinen Zeilenumbrüchen */
.angaben dd.gruss { font-weight: 400; white-space: pre-line; }
