/* Container: zentriert, scrollt bei kleinen Geräten */
.preise-container {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 1.5rem auto;
}

/* Tabelle */
.preise-tabelle {
  border-collapse: collapse;
  width: 100%;
  background-color: #fff;
  border: 3px solid #0077b6;
  border-radius: 8px;
  text-align: center;
  font-size: 1rem;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
  table-layout: auto; /* <— Wichtig: flexible Spaltenbreite */
}

/* Kopfzeile */
.preise-tabelle th {
  background-color: #0077b6;
  color: #fff;
  padding: 8px 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  white-space: normal; /* <— darf umbrechen */
}

/* Zellen */
.preise-tabelle td {
  padding: 6px 10px;
  border-bottom: 1px solid #cfe3ec;
  white-space: normal;  /* <— erlaubt Zeilenumbruch */
  word-break: break-word; /* falls lange Texte */
}

/* Erste Spalte linksbündig */
.preise-tabelle td:first-child,
.preise-tabelle th:first-child {
  text-align: left;
  padding-left: 10px;
}

/* Spalte 2: etwas mehr Platz, aber flexibel */
.preise-tabelle td:nth-child(2),
.preise-tabelle th:nth-child(2) {
  width: 25%;
  min-width: 140px;
  text-align: center;
}

/* Wechselnde Zeilenfarben + Hover */
.preise-tabelle tr:nth-child(even) { background-color: #e8f5fa; }
.preise-tabelle tr:hover { background-color: #d2ecf5; transition: 0.2s; }

/* Runde Ecken */
.preise-tabelle {
  border-radius: 8px;
  overflow: hidden;
}

/* Datum */
td.datum span.zeitraum {
  display: inline;
  font-variant-numeric: tabular-nums;
}

/* ======= Mobile Ansicht ======= */
@media (max-width: 800px) {
  .preise-tabelle {
    font-size: 0.9rem;
  }
}

@media (max-width: 520px) {
  /* Erste Spalte ausblenden auf ganz kleinen Screens */
  .preise-tabelle th:first-child,
  .preise-tabelle td:first-child {
    display: none;
  }
}
