/* CR-B127: dark/light theme support. Bootstrap 5.3 contextual colors (bg-primary, bg-warning,
   etc.) already adapt to [data-bs-theme="dark"] automatically — these variables only cover the
   handful of colors in the app that were previously hardcoded hex, not driven by Bootstrap. */

/* --bookit-turnover-divider (used by app.scss's .weekly-cell-turnover divider) is intentionally
   the mirror image of --bookit-clip-border rather than sharing it: --bookit-clip-border's
   light=black/dark=white pairing was chosen for contrast against all four status background
   colors (CR-B130) and must not change, while the divider's colors are a plain aesthetic
   preference (light=white/dark=black) with no such constraint. */

:root {
  --bookit-room-blocked-bg: #d0d0d0;
  --bookit-conflict-bg: #fff3cd;
  --bookit-clip-border: #000;
  --bookit-turnover-divider: #fff;
  --bookit-room-needs-cleaning-border: #dc3545;
}

[data-bs-theme="dark"] {
  --bookit-room-blocked-bg: #4a4a4a;
  --bookit-conflict-bg: #5c4a00;
  --bookit-clip-border: #fff;
  --bookit-turnover-divider: #000;
  --bookit-room-needs-cleaning-border: #ff6b6b;
}

/* CR-B139: room blocked by an availability block — wyszarzone tło, odróżnialne od "wolny"
   (bg-light) i od koloru statusu rezerwacji (weeklyCellClass). Współdzielone z dailyView.html. */
.room-blocked { background: var(--bookit-room-blocked-bg) !important; }

/* CR-B191: room needing cleaning — visual-only flag on daily/weekly calendars, no effect on
   availability. Shared between dailyView.html (room card) and weeklyView.html (room row/cell). */
.room-needs-cleaning { border: 3px solid var(--bookit-room-needs-cleaning-border) !important; }

/* BUG-B070: same Bootstrap .table specificity override as .weekly-status-* in app.scss. */
.weekly-conflict-cell { background: var(--bookit-conflict-bg) !important; }

/* CR-B130: cell background varies by status (was always light blue) — a fixed blue clip border
   would be invisible against the CONFIRMED cell (bg-primary is the same blue). A border contrasting
   with all four possible statuses (warning/primary/success/secondary) works in both themes. */
.weekly-clip-left  { border-left:  3px solid var(--bookit-clip-border) !important; }
.weekly-clip-right { border-right: 3px solid var(--bookit-clip-border) !important; }

/* CR-B181: suppresses the shared border with the cell immediately before this one in the row,
   for cells that continue the same booking's visible run across a turnover boundary. `hidden`
   (not `none`) is deliberate — in a border-collapse table, `hidden` always wins the shared-edge
   conflict resolution regardless of what the neighboring cell declares on its own touching side,
   so only one side of the pair needs this rule. */
.weekly-continued { border-left: hidden !important; }
