.ahb-wrap{max-width:840px;margin:1rem auto;padding:1rem;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
.ahb-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.ahb-row label{font-weight:600}
.ahb-row input,.ahb-row textarea{padding:10px;border:1px solid #d1d5db;border-radius:8px;width:100%}
.ahb-price{margin:10px 0;padding:10px;background:#f3f4f6;border-radius:8px}
.ahb-actions button{background:#2563eb;color:#fff;border:none;padding:10px 16px;border-radius:10px;cursor:pointer}
/* Kalender */
.ahb-cal{margin:0 0 14px;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}
.ahb-cal-header{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#f8fafc}
.ahb-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:#e5e7eb}
.ahb-cal-cell{background:#fff;min-height:46px;padding:6px 6px 10px;font-size:12px;position:relative}
.ahb-cal-cell .d{font-weight:600;opacity:.8}
.ahb-cal-cell.blocked{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}
.ahb-cal-cell.available{background:#a5ffd5}
.ahb-cal-legend{display:flex;gap:12px;padding:8px 10px;font-size:12px}
.ahb-dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;background:#ecfdf5}
.ahb-dot.block{background:#e5e7eb}
.ahb-dot.pending{background:#fde68a}
.ahb-dot.confirmed{background:#fca5a5}

.flatpickr-day.flatpickr-disabled {cursor:not-allowed; color: #ff6a6a !important;}
/* Flatpickr: nicht buchbare Tage deutlich grau darstellen */
.ahb-wrap .flatpickr-calendar .flatpickr-day.flatpickr-disabled,
.ahb-wrap .flatpickr-calendar .flatpickr-day.disabled,
.ahb-wrap .flatpickr-calendar .flatpickr-day.notAllowed,
.ahb-wrap .flatpickr-calendar .flatpickr-day[aria-disabled="true"] {
  background: #f3f4f6 !important;   /* helles Grau */
  color: #ff6a6a !important;         /* graue Schrift */
  border-color: #e5e7eb !important;
  cursor: not-allowed !important;
}

/* Hover nicht „aufhellen“ lassen */
.ahb-wrap .flatpickr-calendar .flatpickr-day.flatpickr-disabled:hover,
.ahb-wrap .flatpickr-calendar .flatpickr-day.disabled:hover,
.ahb-wrap .flatpickr-calendar .flatpickr-day.notAllowed:hover {
  background: #f3f4f6 !important;
  color: #9ca3af !important;
}

/* Optional: ausgewählte freie Tage etwas runder/markanter */
.ahb-wrap .flatpickr-calendar .flatpickr-day {
  border-radius: 8px;
}

.ahb-wrap .flatpickr-calendar .flatpickr-day:not(.flatpickr-disabled):not(.prevMonthDay):not(.nextMonthDay) {
  background: #ecfdf5; /* sehr helles Grün für buchbar */
}

/* leichte Schraffur für Cleaning */
.ahb-cal-cell.cleaning {
  background-image: repeating-linear-gradient(
    45deg,
    rgba(253, 230, 138, .6),  /* warmes Gelb, halbtransparent */
    rgba(253, 230, 138, .6) 6px,
    rgba(253, 230, 138, .2) 6px,
    rgba(253, 230, 138, .2) 12px
  );
  position: relative;
}

.ahb-timeline{border:1px solid #e5e7eb;border-radius:6px;background:#fff;padding:10px}
.ahb-tl-grid{display:grid;grid-auto-rows:28px;row-gap:4px}
.ahb-tl-row{display:grid;grid-template-columns:repeat(var(--ahb-days), 1fr);column-gap:2px}
.ahb-tl-cell{height:20px;border-radius:3px;background:#71fa98}      /* frei (hellgrün) */
.ahb-tl-cell.state-book{background:#026fff}   /* vermietet/angefragt (hellblau) */
.ahb-tl-cell.state-block{background:#f76565}  /* blockiert (rot) */
.ahb-tl-cell.state-clean{background:#fad850}  /* Reinigung (orange) */
.ahb-tl-head{display:grid;grid-template-columns:repeat(var(--ahb-days), 1fr);column-gap:2px;font-size:11px;color:#64748b;margin-bottom:6px}
.ahb-tl-head > div{text-align:center}
.ahb-legend{display:flex;gap:14px;margin:6px 0 10px}
.ahb-dot{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:middle;margin-right:6px;background:#71fa98}
.ahb-dot.book{background:#026fff}.ahb-dot.block{background:#f76565}.ahb-dot.clean{background:#fad850}
.ahb-timeline { margin-bottom: 18px; }


