/* Zeitrange */
.ndfp-range{font:600 14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:#111}

/* Map-Container – Sicherheitsnetz */
#ndfp-map{min-height:520px;width:100%}
#ndfp-map-wrap{width:100%}

/* Tabelle */
.ndfp-table{width:100%;border-collapse:collapse;margin-top:16px;font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial}
.ndfp-table th,.ndfp-table td{border:1px solid #e6e6e6;padding:8px 10px;vertical-align:top}
.ndfp-table thead th{position:sticky;top:0;background:#fff;z-index:2;box-shadow:0 1px 0 0 #e6e6e6, 0 2px 6px rgba(0,0,0,.05)}
.ndfp-table tr.active{background:#fff9d6}

/* Marker (divIcon) */
.ndfp-pin{width:24px;height:24px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);position:relative;border:1px solid #fff;box-shadow:0 0 3px rgba(0,0,0,.35)}
.ndfp-pin::after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;left:7px;top:7px;background:#fff}
.ndfp-pin.active{outline:3px solid rgba(0,0,0,.2);z-index:9999;transition:all .15s ease-in-out}
.ndfp-pin:hover{transform:rotate(-45deg) scale(1.08);transition:all .15s ease-in-out}
.ndfp-pin.yellow{background:#f59e0b}
.ndfp-pin.blue{background:#3b82f6}
.ndfp-pin.green{background:#10b981}
.ndfp-pin.gray{background:#9ca3af}

/* Zeitblöcke IM POPUP */
.ndfp-zeit,
.nd-popup-zeit {
  background:#fff6cc;
  padding:4px 6px;
  margin:4px 0;
  border-radius:4px;
  font-size:0.9em;
}

/* Zeitblöcke IN DER TABELLE */
.ndfp-table .ndfp-zeit {
  background: none;
  padding: 0;
  border-radius: 0;
}

.nd-popup-zeit:first-of-type {
  margin-top: 6px; /* vorher z.B. 4px → jetzt +2px */
}

.nd-popup-telefon {
  margin-top: 12px;
}

.nd-popup-bemerkungen {
  margin-top: 6px;
  font-size: 0.9em;
  color: #333;
  line-height: 1.3;
}


.ndfp-table td:nth-child(3) {
  min-width: 260px;
}

.ndfp-table td:nth-child(3),
.ndfp-table .ndfp-zeit {
  white-space: nowrap;
}

.ndfp-table td:nth-child(3) {
  min-width: 28ch;
}

/* TABELLE */

.ndfp-table tbody tr:nth-child(even) {
  background: #fafafa;
}

.ndfp-table tbody tr.active {
  background: #fff9d6 !important;
}

.ndfp-table th,
.ndfp-table td {
  border-color: #e9e9e9;
}

.ndfp-table thead th {
  background: #f5f5f5;
  font-weight: 600;
}

.ndfp-table tbody tr:hover {
  background: #f2f2f2;
  cursor: pointer;
}

/* Header linksbündig */
.ndfp-table thead th {
  text-align: left;
  padding-left: 10px;
  padding-right: 10px;
  border-bottom: 2px solid #ddd;
}

/* Nur horizontale Linien */
.ndfp-table th,
.ndfp-table td {
  border: none;
  border-bottom: 1px solid #ededed;
}
