/* TEST V117.9.12: consistent weekend / JP national holiday presentation.
   Visual-only styles. Do not change selection/availability/closed/booking semantics. */
:root{--v117912-weekend-blue:#eaf4ff;--v117912-weekend-blue-ink:#286a98;--v117912-holiday-red:#fff0f1;--v117912-holiday-red-ink:#aa4250;}
/* Booking calendar: weekday and date numerals get a calm but distinguishable color.
   Keep chosen dates white on their green selection background. */
.cal-grid .cal-dow.v117912-day-saturday{background:var(--v117912-weekend-blue);color:var(--v117912-weekend-blue-ink);border-radius:6px;}
.cal-grid .cal-dow.v117912-day-sunday{background:var(--v117912-holiday-red);color:var(--v117912-holiday-red-ink);border-radius:6px;}
.cal-grid .cal-day.v117912-day-saturday:not(.selected) .cal-day-num{color:var(--v117912-weekend-blue-ink);font-weight:800;}
.cal-grid .cal-day.v117912-day-sunday:not(.selected) .cal-day-num{color:var(--v117912-holiday-red-ink);font-weight:800;}
.cal-grid .cal-day.selected .cal-day-num{color:#fff!important;}
.cal-grid .cal-day:is(.closed,.past).v117912-day-saturday .cal-day-num{color:#96b6d2;}
.cal-grid .cal-day:is(.closed,.past).v117912-day-sunday .cal-day-num{color:#d0a3a9;}
/* Staff mini calendars display days and availability with the same tone; the
   existing availability symbol and closed state remain untouched. */
.cal-grid .cal-day.v117912-day-saturday:not(.selected):not(.closed):not(.past){border-color:#d8e6f5;}
.cal-grid .cal-day.v117912-day-sunday:not(.selected):not(.closed):not(.past){border-color:#f1dce0;}
.cal-grid .cal-day.v117912-day-saturday:not(.selected){color:var(--v117912-weekend-blue-ink);}
.cal-grid .cal-day.v117912-day-sunday:not(.selected){color:var(--v117912-holiday-red-ink);}
.cal-grid .cal-day.avail.v117912-day-saturday:not(.selected){background:#eaf4ff;}
.cal-grid .cal-day.avail.v117912-day-sunday:not(.selected){background:#fff0f1;}
/* Admin appointment calendar: user requested *date lettering*, not a status
   background change. Important counters and booking cards keep their colors. */
.cal-day-nav-approved .cal-day-label.v117912-day-saturday{color:var(--v117912-weekend-blue-ink)!important;}
.cal-day-nav-approved .cal-day-label.v117912-day-sunday{color:var(--v117912-holiday-red-ink)!important;}
.res-list-day-head strong.v117912-day-saturday{color:var(--v117912-weekend-blue-ink)!important;}
.res-list-day-head strong.v117912-day-sunday{color:var(--v117912-holiday-red-ink)!important;}
.res-list-cal-week .v117912-day-saturday{color:var(--v117912-weekend-blue-ink);background:var(--v117912-weekend-blue);border-radius:5px;}
.res-list-cal-week .v117912-day-sunday{color:var(--v117912-holiday-red-ink);background:var(--v117912-holiday-red);border-radius:5px;}
.res-list-cal-grid .res-list-cal-day.v117912-day-saturday:not(.is-selected){color:var(--v117912-weekend-blue-ink);background:#f0f7ff;border-color:#dbe9f8;}
.res-list-cal-grid .res-list-cal-day.v117912-day-sunday:not(.is-selected){color:var(--v117912-holiday-red-ink);background:#fff3f4;border-color:#f6e0e3;}
.res-list-cal-grid .res-list-cal-day.is-selected{color:#fff!important;}
.calendar-week-day.v117912-day-saturday .calendar-week-date{color:var(--v117912-weekend-blue-ink);}
.calendar-week-day.v117912-day-sunday .calendar-week-date{color:var(--v117912-holiday-red-ink);}
/* Legacy hours calendar: no changes to values, month selection or save actions. */
.v117-calgrid>b.v117912-day-saturday{color:var(--v117912-weekend-blue-ink);background:var(--v117912-weekend-blue);border-radius:5px;}
.v117-calgrid>b.v117912-day-sunday{color:var(--v117912-holiday-red-ink);background:var(--v117912-holiday-red);border-radius:5px;}
.v117-calgrid button.v117912-day-saturday:not(.active){color:var(--v117912-weekend-blue-ink);border-color:#dbe9f8;}
.v117-calgrid button.v117912-day-sunday:not(.active){color:var(--v117912-holiday-red-ink);border-color:#f6e0e3;}
.v117-calgrid button.active{color:#fff!important;}

/* TEST V117.9.15 — national holidays are LAVENDER, not Sunday pink.
   Shared colors also used by hours/shift month grids, editor rows and staff table. */
:root{--v117915-holiday-bg:#f2edff;--v117915-holiday-ink:#7351a1;--v117915-holiday-border:#d6c5f0;}
/* Customer WEB/LINE and public staff calendars. Weekday header stays Sunday red. */
.cal-grid .cal-day.v117912-day-holiday:not(.selected) .cal-day-num{color:var(--v117915-holiday-ink);font-weight:800}
.cal-grid .cal-day:is(.closed,.past).v117912-day-holiday .cal-day-num{color:#9a89b8}
.cal-grid .cal-day.v117912-day-holiday:not(.selected):not(.closed):not(.past){border-color:var(--v117915-holiday-border)}
.cal-grid .cal-day.v117912-day-holiday:not(.selected){color:var(--v117915-holiday-ink)}
.cal-grid .cal-day.avail.v117912-day-holiday:not(.selected){background:var(--v117915-holiday-bg)}
/* Admin appointments: color the date label, not the booking or warning status. */
.cal-day-nav-approved .cal-day-label.v117912-day-holiday{color:var(--v117915-holiday-ink)!important}
.res-list-day-head strong.v117912-day-holiday{color:var(--v117915-holiday-ink)!important}
.res-list-cal-grid .res-list-cal-day.v117912-day-holiday:not(.is-selected){color:var(--v117915-holiday-ink);background:var(--v117915-holiday-bg);border-color:var(--v117915-holiday-border)}
.calendar-week-day.v117912-day-holiday .calendar-week-date{color:var(--v117915-holiday-ink)}
/* Legacy hours grid (if present). */
.v117-calgrid button.v117912-day-holiday:not(.active){color:var(--v117915-holiday-ink);border-color:var(--v117915-holiday-border)}
/* In all date pickers, a selected day retains its original selection contrast. */
.cal-grid .cal-day.selected.v117912-day-holiday .cal-day-num,
.res-list-cal-grid .res-list-cal-day.is-selected.v117912-day-holiday{color:#fff!important}
