/* Scheduler module styles (Polish 17). */
.sched-heatmap { border-collapse: collapse; font-size: 10px; }
.sched-heatmap th, .sched-heatmap td { width: 13px; height: 13px; text-align: center; }
.sched-heatmap th.tick { color: #888; font-weight: 400; }
.sched-heatmap td.dow { width: 2.4rem; text-align: left; color: #555; font-weight: 600; padding-right: 4px; }
.sched-heatmap td.cell { border: 1px solid #eef0f2; background: #f8f9fa; }
.sched-heatmap td.cell.open { background: var(--bs-primary, #0d6efd); border-color: var(--bs-primary, #0d6efd); }

.sched-day:last-child { border-bottom: none !important; }

/* public booking page */
.sched-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 8px; }
.sched-slot { padding: 10px 8px; text-align: center; border: 1px solid var(--bs-primary, #0d6efd); border-radius: 6px;
  background: #fff; color: var(--bs-primary, #0d6efd); cursor: pointer; font-weight: 600; }
.sched-slot:hover { background: var(--bs-primary, #0d6efd); color: #fff; }
.sched-slot[disabled], .sched-slot.full { opacity: .4; cursor: not-allowed; }
.sched-book-wrap { max-width: 760px; margin: 0 auto; }
.sched-tz-note { font-size: 13px; color: #555; }
.sched-daynav button.active { background: var(--bs-primary, #0d6efd); color: #fff; }
