@include exports("scheduler/theme") {

    // Appearance
    .k-scheduler {
        @extend .k-text-selection;
        @include fill(
            $scheduler-text,
            $scheduler-bg,
            $scheduler-border
        );
    }

    // Current time
    .k-current-time {
        background: $scheduler-current-time-color;

        &.k-current-time-arrow-left {
            border-right-color: $scheduler-current-time-color;
        }

        &.k-current-time-arrow-right {
            border-left-color: $scheduler-current-time-color;
        }

        &.k-current-time-arrow-down {
            border-top-color: $scheduler-current-time-color;
        }
    }

    // Header and footer
    kendo-scheduler .k-scheduler-toolbar {
        @include fill(
            $toolbar-text,
            $toolbar-bg,
            $toolbar-border,
            $toolbar-gradient
        );
    }
    kendo-scheduler .k-scheduler-footer {
        @include fill(
            $toolbar-text,
            $toolbar-bg,
            $toolbar-border,
            $toolbar-gradient
        );
    }

    .k-scheduler-header {
        background-color: $base-bg;
    }

    .k-scheduler-header-wrap {
        background-color: $component-bg;
    }


    //Scheduler navigation
    ul.k-scheduler-navigation {

        li {
            &.k-state-focused {
                @include box-shadow( $list-item-focused-shadow );
            }
        }

        .k-nav-today,
        .k-nav-prev,
        .k-nav-next {
            @include fill(
                $button-text,
                $button-bg,
                $button-border,
                $button-gradient
            );

            &:hover,
            &.k-state-hover {
                @include fill(
                    $button-hovered-text,
                    $button-hovered-bg,
                    $button-hovered-border,
                    $button-hovered-gradient
                );
             }
        }
    }


    // View switcher
    ul.k-scheduler-views {
        &.k-state-expanded { background-color: $base-bg; }

        li {
            @include fill(
                $button-text,
                $button-bg,
                $button-border,
                $button-gradient
            );

            &:hover,
            &.k-state-hover {
                @include fill(
                    $button-hovered-text,
                    $button-hovered-bg,
                    $button-hovered-border,
                    $button-hovered-gradient
                );
            }
            &.k-state-selected {
                @include fill(
                    $primary-button-pressed-text,
                    $primary-button-pressed-bg,
                    $primary-button-pressed-border,
                    $primary-button-pressed-gradient
                );
                @include box-shadow( $primary-button-pressed-shadow );
            }
            &.k-state-focus,
            &.k-state-focused {
                @include box-shadow( $button-focused-shadow );
            }
        }
    }


    // Scheduler footer
    .k-scheduler-footer {

        li {
            @include fill(
                $button-text,
                $button-bg,
                $button-border,
                $button-gradient
            );

            &:hover {
                @include fill(
                    $button-hovered-text,
                    $button-hovered-bg,
                    $button-hovered-border,
                    $button-hovered-gradient
                );
            }
        }
    }


    // Scheduler content
    .k-scheduler-content {}
    .k-nonwork-hour {
        background-color: $scheduler-nonwork-bg;
    }

    .k-scheduler-layout td.k-state-selected,
    .k-scheduler-layout .k-scheduler-cell.k-state-selected {
        background-color: rgba($selected-bg, .25);
    }

    .k-scheduler-layout-flex {
        .k-scheduler-head,
        .k-sticky-cell {
            background-color: $component-bg;
        }
    }


    // Events
    .k-event {
        @include fill(
            $scheduler-event-text,
            $scheduler-event-bg,
            $scheduler-event-border,
            $scheduler-event-gradient
        );
        @include box-shadow( $scheduler-event-shadow );

        &.k-state-hover {
            @include fill(
                $scheduler-event-hover-text,
                $scheduler-event-hover-bg,
                $scheduler-event-hover-border,
                $scheduler-event-hover-gradient
            );
            @include box-shadow( $scheduler-event-hover-shadow );
        }

        &.k-state-selected {
            @include fill(
                $scheduler-event-selected-text,
                $scheduler-event-selected-bg,
                $scheduler-event-selected-border,
                $scheduler-event-selected-gradient
            );
            @include box-shadow( $scheduler-event-selected-shadow );
        }
    }
    .k-event-inverse {
        color: contrast-wcag( $scheduler-event-text );
    }


    // Drag hint
    .k-event-drag-hint {}


    // Resizing
    .k-scheduler-marquee {}
    .k-scheduler-marquee::before,
    .k-scheduler-marquee::after {
        border-color: $primary-button-border;
    }

    // Edit dialog
    .k-scheduler-edit-dialog {
        .k-dialog-buttongroup {
            border-color: $border-color;
        }
    }

}




@include exports("scheduler-views/theme") {

    // Day view
    .k-scheduler-dayview {}


    // Workweek view
    // sass-lint:disable class-name-format
    .k-scheduler-workWeekview {}
    // sass-lint:enable class-name-format


    // Week view
    .k-scheduler-weekview {}


    // Month view
    .k-scheduler-monthview {}


    // Agenda view
    .k-scheduler-agendaview {

        // Hover
        .k-scheduler-content tr:hover,
        .k-scheduler-content tr.k-state-hover,
        .k-scheduler-content .k-scheduler-row:hover {
            @include fill(
                $node-hovered-text,
                $node-hovered-bg,
                $node-hovered-border,
                $node-hovered-gradient
            );
        }

        .k-scheduler-content tr:hover .k-scheduler-datecolumn,
        .k-scheduler-content tr:hover .k-scheduler-groupcolumn,
        .k-scheduler-content tr.k-state-hover .k-scheduler-datecolumn,
        .k-scheduler-content tr.k-state-hover .k-scheduler-groupcolumn {
            @include fill(
                $component-text,
                $component-bg,
                $component-border
            );
        }

        // Selected
        .k-scheduler-content tr.k-state-selected {
            background-color: rgba($selected-bg, .25);
        }
        .k-scheduler-content tr.k-state-selected .k-scheduler-datecolumn,
        .k-scheduler-content tr.k-state-selected .k-scheduler-groupcolumn {
            background-color: $component-bg;
        }
    }


    // Timeline view
    .k-scheduler-timelineview {}

}




@include exports("scheduler-edit-form/theme") {

    .k-scheduler-edit-form {}

}
