Scheduler Styling & Theming

Styling & theming

Every visual knob is a --cui-scheduler-* CSS variable resolving through CoreUI semantic tokens.

The Scheduler is styled entirely through CSS custom properties declared on .scheduler. Each resolves through a CoreUI semantic variable with a built-in fallback, so light/dark theming via data-coreui-theme works automatically — with or without the CoreUI stylesheet.

Event colors

Set colors per event or per resource in data — no CSS required:

<c-scheduler [events]="events" [resources]="resources" />

An event’s color wins over its resource’s color; both override the --cui-scheduler-event-bg token for that element only.

CSS variables

VariablePurpose
--cui-scheduler-bg, --cui-scheduler-colorComponent surface and text.
--cui-scheduler-border-color, --cui-scheduler-border-radiusFrame and radius.
--cui-scheduler-hour-line-colorHour gridlines.
--cui-scheduler-event-bg, --cui-scheduler-event-color, --cui-scheduler-event-border-radiusEvent boxes and chips.
--cui-scheduler-event-selected-ringSelection ring.
--cui-scheduler-focus-ring-width, --cui-scheduler-focus-ring-colorKeyboard focus ring.
--cui-scheduler-drag-preview-bg, --cui-scheduler-drag-preview-borderDrag preview.
--cui-scheduler-selection-bgRange-selection overlay.
--cui-scheduler-non-working-bgBusiness-hours shading.
--cui-scheduler-now-colorNow indicator.
--cui-scheduler-all-day-bgAll-day lane and outside-month days.
--cui-scheduler-header-bgHeader rows.
--cui-scheduler-muted-colorSecondary text (axis, labels).
--cui-scheduler-gutter-widthTime-axis width.
--cui-scheduler-max-heightScroll container height.
--cui-scheduler-button-hover-bg, --cui-scheduler-button-active-bg, --cui-scheduler-button-active-colorToolbar buttons.
.my-calendar .scheduler {
  --cui-scheduler-event-bg: #2eb85c;
  --cui-scheduler-max-height: 50rem;
}

SASS variables

Every CSS variable above has a $scheduler-* Sass counterpart declared !default, so you can retheme at build time:

@use "@coreui/scheduler/scss/scheduler" with (
  $scheduler-event-bg: var(--cui-info),
  $scheduler-max-height: 50rem
);