@use "sass:math";
@use "../core/_index.scss" as *;
@use "../toolbar/_variables.scss" as *;
@use "../calendar/_variables.scss" as *;

// Scheduler

$kendo-scheduler-border-width: 1px !default;
$kendo-scheduler-border-radius: null !default;
$kendo-scheduler-font-family: var(--kendo-font-family) !default;
$kendo-scheduler-font-size: var(--kendo-font-size) !default;
$kendo-scheduler-line-height: var(--kendo-line-height) !default;

$kendo-scheduler-bg: k-color(surface-alt) !default;
$kendo-scheduler-text: k-color(on-app-surface) !default;
$kendo-scheduler-border: k-color(border) !default;

$kendo-scheduler-toolbar-bg: k-color(surface-alt) !default;
$kendo-scheduler-toolbar-text: $kendo-toolbar-text !default;
$kendo-scheduler-toolbar-border: $kendo-toolbar-border !default;
$kendo-scheduler-toolbar-gradient: $kendo-toolbar-gradient !default;

$kendo-scheduler-footer-bg: k-color(surface-alt) !default;
$kendo-scheduler-footer-text: $kendo-toolbar-text !default;
$kendo-scheduler-footer-border: $kendo-toolbar-border !default;
$kendo-scheduler-footer-gradient: $kendo-toolbar-gradient !default;

$kendo-scheduler-event-min-height: 12px !default;
$kendo-scheduler-event-border-radius: k-border-radius(md) !default;

$kendo-scheduler-event-title-font-size: var(--kendo-font-size-sm) !default;
$kendo-scheduler-event-title-line-height: var(--kendo-line-height-sm) !default;
$kendo-scheduler-event-title-padding-top: k-spacing(1) !default;
$kendo-scheduler-event-title-padding-bottom: k-spacing(0.5) !default;

$kendo-scheduler-event-time-font-size: var(--kendo-font-size-xs) !default;
$kendo-scheduler-event-time-line-height: var(--kendo-line-height-sm) !default;
$kendo-scheduler-event-time-padding-top: k-spacing(0.5) !default;
$kendo-scheduler-event-time-padding-bottom: k-spacing(0.5) !default;

$kendo-scheduler-event-bg: k-color(primary) !default;
$kendo-scheduler-event-text: k-color(on-primary) !default;
$kendo-scheduler-event-border: null !default;
$kendo-scheduler-event-gradient: null !default;
$kendo-scheduler-event-shadow: null !default;

$kendo-scheduler-event-readonly-bg: k-color(primary-subtle) !default;
$kendo-scheduler-event-readonly-text: k-color(primary-on-subtle) !default;
$kendo-scheduler-event-readonly-border: k-color(primary-emphasis) !default;

$kendo-scheduler-event-hover-bg: $kendo-scheduler-event-bg !default;
$kendo-scheduler-event-hover-text: $kendo-scheduler-event-text !default;
$kendo-scheduler-event-hover-border: null !default;
$kendo-scheduler-event-hover-gradient: null !default;
$kendo-scheduler-event-hover-shadow: null !default;

$kendo-scheduler-event-selected-bg: k-color(primary-active) !default;
$kendo-scheduler-event-selected-text: k-color(on-primary) !default;
$kendo-scheduler-event-selected-border: null !default;
$kendo-scheduler-event-selected-gradient: null !default;
$kendo-scheduler-event-selected-shadow: inset 0 0 0 2px k-color(border-alt) !default;

$kendo-scheduler-event-ongoing-shadow: inset 0px 0px 0px 1px #ff0000 !default;

$kendo-scheduler-resizer-size: 0.5em !default;
$kendo-scheduler-resize-handle-size: 12px !default;
$kendo-scheduler-resize-handle-thickness: 1px !default;
$kendo-scheduler-resize-handle-border-radius: k-border-radius(full) !default;
$kendo-scheduler-resize-handle-border-width: 0 !default;
$kendo-scheduler-resize-handle-bg: k-color(primary-subtle) !default;

$kendo-scheduler-cell-padding-x: k-spacing(2) !default;
$kendo-scheduler-cell-padding-y: k-spacing(2) !default;
$kendo-scheduler-cell-height: $kendo-line-height-em !default;
$kendo-scheduler-datecolumn-width: 12em !default;
$kendo-scheduler-timecolumn-width: 11em !default;

$kendo-scheduler-nonwork-bg: k-color(surface) !default;
$kendo-scheduler-nonwork-text: null !default;

$kendo-scheduler-othermonth-bg: k-color(base) !default;
$kendo-scheduler-othermonth-text: null !default;

$kendo-scheduler-readonly-cell-bg: k-color(base-subtle) !default;
$kendo-scheduler-readonly-cell-text: null !default;

$kendo-scheduler-yearview-padding-x: k-spacing(3) !default;
$kendo-scheduler-yearview-padding-y: $kendo-scheduler-yearview-padding-x !default;

$kendo-scheduler-yearview-calendar-gap: k-spacing(3) !default;

$kendo-scheduler-yearview-indicator-size: 3px !default;
$kendo-scheduler-yearview-indicator-calc-offset-top: calc( #{$kendo-calendar-cell-size} - (#{$kendo-calendar-cell-padding-y} * 2)) !default;
$kendo-scheduler-yearview-indicator-calc-offset-left: calc( 50% - #{math.div( $kendo-scheduler-yearview-indicator-size, 2 )} ) !default;
$kendo-scheduler-yearview-indicator-border-radius: 50% !default;
$kendo-scheduler-yearview-indicator-bg: k-color(primary) !default;
$kendo-scheduler-yearview-indicator-selected-bg: k-color(on-primary) !default;

$kendo-scheduler-popover-month-font-size: var(--kendo-font-size-sm) !default;
$kendo-scheduler-popover-day-font-size: calc( var(--kendo-font-size-sm) * 2 ) !default;

$kendo-scheduler-popover-events-max-height: 250px !default;
$kendo-scheduler-popover-events-gap: k-spacing(1.5) !default;

$kendo-scheduler-popover-event-min-height: 25px !default;
$kendo-scheduler-popover-event-padding-x: k-spacing(2) !default;
$kendo-scheduler-popover-event-padding-y: null !default;
$kendo-scheduler-popover-event-border-radius: k-border-radius(md) !default;
$kendo-scheduler-popover-event-gap: k-spacing(1) !default;

$kendo-scheduler-event-template-padding-x: k-spacing(2) !default;
$kendo-scheduler-event-template-padding-y: k-spacing(1) !default;

$kendo-scheduler-marquee-label-inset-x: k-spacing(1) !default;
$kendo-scheduler-marquee-label-inset-y: k-spacing(0.5) !default;

$kendo-scheduler-nav-item-icon-spacing: k-spacing(1) !default;

$kendo-scheduler-header-bg: k-color(surface) !default;


// Adaptive
$kendo-scheduler-adaptive-bg: k-color(surface-alt) !default;
$kendo-scheduler-adaptive-text: k-color(on-app-surface) !default;
$kendo-scheduler-adaptive-border: k-color(border) !default;

$kendo-scheduler-adaptive-content-bg: k-color(surface) !default;

$kendo-scheduler-adaptive-border-width: 1px !default;
$kendo-scheduler-adaptive-font-family: var(--kendo-font-family) !default;
$kendo-scheduler-adaptive-font-size: var(--kendo-font-size) !default;
$kendo-scheduler-adaptive-line-height: var(--kendo-line-height) !default;

$kendo-scheduler-adaptive-current-text: k-color(primary-on-surface) !default;
$kendo-scheduler-adaptive-base-text: inherit !default;
$kendo-scheduler-adaptive-subtle-text: k-color(on-app-surface) !default;
$kendo-scheduler-recurrence-fields-row-gap: k-spacing(2) !default;

@forward "@progress/kendo-theme-core/scss/components/scheduler/_variables.scss" with (
    $kendo-scheduler-border-width: $kendo-scheduler-border-width,
    $kendo-scheduler-border-radius: $kendo-scheduler-border-radius,
    $kendo-scheduler-font-family: $kendo-scheduler-font-family,
    $kendo-scheduler-font-size: $kendo-scheduler-font-size,
    $kendo-scheduler-line-height: $kendo-scheduler-line-height,
    $kendo-scheduler-bg: $kendo-scheduler-bg,
    $kendo-scheduler-text: $kendo-scheduler-text,
    $kendo-scheduler-border: $kendo-scheduler-border,
    $kendo-scheduler-toolbar-bg: $kendo-scheduler-toolbar-bg,
    $kendo-scheduler-toolbar-text: $kendo-scheduler-toolbar-text,
    $kendo-scheduler-toolbar-border: $kendo-scheduler-toolbar-border,
    $kendo-scheduler-toolbar-gradient: $kendo-scheduler-toolbar-gradient,
    $kendo-scheduler-footer-bg: $kendo-scheduler-footer-bg,
    $kendo-scheduler-footer-text: $kendo-scheduler-footer-text,
    $kendo-scheduler-footer-border: $kendo-scheduler-footer-border,
    $kendo-scheduler-footer-gradient: $kendo-scheduler-footer-gradient,
    $kendo-scheduler-event-min-height: $kendo-scheduler-event-min-height,
    $kendo-scheduler-event-border-radius: $kendo-scheduler-event-border-radius,
    $kendo-scheduler-event-title-font-size: $kendo-scheduler-event-title-font-size,
    $kendo-scheduler-event-title-line-height: $kendo-scheduler-event-title-line-height,
    $kendo-scheduler-event-title-padding-top: $kendo-scheduler-event-title-padding-top,
    $kendo-scheduler-event-title-padding-bottom: $kendo-scheduler-event-title-padding-bottom,
    $kendo-scheduler-event-time-font-size: $kendo-scheduler-event-time-font-size,
    $kendo-scheduler-event-time-line-height: $kendo-scheduler-event-time-line-height,
    $kendo-scheduler-event-time-padding-top: $kendo-scheduler-event-time-padding-top,
    $kendo-scheduler-event-time-padding-bottom: $kendo-scheduler-event-time-padding-bottom,
    $kendo-scheduler-event-bg: $kendo-scheduler-event-bg,
    $kendo-scheduler-event-text: $kendo-scheduler-event-text,
    $kendo-scheduler-event-border: $kendo-scheduler-event-border,
    $kendo-scheduler-event-gradient: $kendo-scheduler-event-gradient,
    $kendo-scheduler-event-shadow: $kendo-scheduler-event-shadow,
    $kendo-scheduler-event-readonly-bg: $kendo-scheduler-event-readonly-bg,
    $kendo-scheduler-event-readonly-text: $kendo-scheduler-event-readonly-text,
    $kendo-scheduler-event-readonly-border: $kendo-scheduler-event-readonly-border,
    $kendo-scheduler-event-hover-bg: $kendo-scheduler-event-hover-bg,
    $kendo-scheduler-event-hover-text: $kendo-scheduler-event-hover-text,
    $kendo-scheduler-event-hover-border: $kendo-scheduler-event-hover-border,
    $kendo-scheduler-event-hover-gradient: $kendo-scheduler-event-hover-gradient,
    $kendo-scheduler-event-hover-shadow: $kendo-scheduler-event-hover-shadow,
    $kendo-scheduler-event-selected-bg: $kendo-scheduler-event-selected-bg,
    $kendo-scheduler-event-selected-text: $kendo-scheduler-event-selected-text,
    $kendo-scheduler-event-selected-border: $kendo-scheduler-event-selected-border,
    $kendo-scheduler-event-selected-gradient: $kendo-scheduler-event-selected-gradient,
    $kendo-scheduler-event-selected-shadow: $kendo-scheduler-event-selected-shadow,
    $kendo-scheduler-event-ongoing-shadow: $kendo-scheduler-event-ongoing-shadow,
    $kendo-scheduler-resizer-size: $kendo-scheduler-resizer-size,
    $kendo-scheduler-resize-handle-size: $kendo-scheduler-resize-handle-size,
    $kendo-scheduler-resize-handle-thickness: $kendo-scheduler-resize-handle-thickness,
    $kendo-scheduler-resize-handle-border-radius: $kendo-scheduler-resize-handle-border-radius,
    $kendo-scheduler-resize-handle-border-width: $kendo-scheduler-resize-handle-border-width,
    $kendo-scheduler-resize-handle-bg: $kendo-scheduler-resize-handle-bg,
    $kendo-scheduler-cell-padding-x: $kendo-scheduler-cell-padding-x,
    $kendo-scheduler-cell-padding-y: $kendo-scheduler-cell-padding-y,
    $kendo-scheduler-cell-height: $kendo-scheduler-cell-height,
    $kendo-scheduler-datecolumn-width: $kendo-scheduler-datecolumn-width,
    $kendo-scheduler-timecolumn-width: $kendo-scheduler-timecolumn-width,
    $kendo-scheduler-nonwork-bg: $kendo-scheduler-nonwork-bg,
    $kendo-scheduler-nonwork-text: $kendo-scheduler-nonwork-text,
    $kendo-scheduler-othermonth-bg: $kendo-scheduler-othermonth-bg,
    $kendo-scheduler-othermonth-text: $kendo-scheduler-othermonth-text,
    $kendo-scheduler-readonly-cell-bg: $kendo-scheduler-readonly-cell-bg,
    $kendo-scheduler-readonly-cell-text: $kendo-scheduler-readonly-cell-text,
    $kendo-scheduler-yearview-padding-x: $kendo-scheduler-yearview-padding-x,
    $kendo-scheduler-yearview-padding-y: $kendo-scheduler-yearview-padding-y,
    $kendo-scheduler-yearview-calendar-gap: $kendo-scheduler-yearview-calendar-gap,
    $kendo-scheduler-yearview-indicator-size: $kendo-scheduler-yearview-indicator-size,
    $kendo-scheduler-yearview-indicator-calc-offset-top: $kendo-scheduler-yearview-indicator-calc-offset-top,
    $kendo-scheduler-yearview-indicator-calc-offset-left: $kendo-scheduler-yearview-indicator-calc-offset-left,
    $kendo-scheduler-yearview-indicator-border-radius: $kendo-scheduler-yearview-indicator-border-radius,
    $kendo-scheduler-yearview-indicator-bg: $kendo-scheduler-yearview-indicator-bg,
    $kendo-scheduler-yearview-indicator-selected-bg: $kendo-scheduler-yearview-indicator-selected-bg,
    $kendo-scheduler-popover-month-font-size: $kendo-scheduler-popover-month-font-size,
    $kendo-scheduler-popover-day-font-size: $kendo-scheduler-popover-day-font-size,
    $kendo-scheduler-popover-events-max-height: $kendo-scheduler-popover-events-max-height,
    $kendo-scheduler-popover-events-gap: $kendo-scheduler-popover-events-gap,
    $kendo-scheduler-popover-event-min-height: $kendo-scheduler-popover-event-min-height,
    $kendo-scheduler-popover-event-padding-x: $kendo-scheduler-popover-event-padding-x,
    $kendo-scheduler-popover-event-padding-y: $kendo-scheduler-popover-event-padding-y,
    $kendo-scheduler-popover-event-border-radius: $kendo-scheduler-popover-event-border-radius,
    $kendo-scheduler-popover-event-gap: $kendo-scheduler-popover-event-gap,
    $kendo-scheduler-event-template-padding-x: $kendo-scheduler-event-template-padding-x,
    $kendo-scheduler-event-template-padding-y: $kendo-scheduler-event-template-padding-y,
    $kendo-scheduler-marquee-label-inset-x: $kendo-scheduler-marquee-label-inset-x,
    $kendo-scheduler-marquee-label-inset-y: $kendo-scheduler-marquee-label-inset-y,
    $kendo-scheduler-nav-item-icon-spacing: $kendo-scheduler-nav-item-icon-spacing,
    $kendo-scheduler-header-bg: $kendo-scheduler-header-bg,
    $kendo-scheduler-adaptive-bg: $kendo-scheduler-adaptive-bg,
    $kendo-scheduler-adaptive-text: $kendo-scheduler-adaptive-text,
    $kendo-scheduler-adaptive-border: $kendo-scheduler-adaptive-border,
    $kendo-scheduler-adaptive-content-bg: $kendo-scheduler-adaptive-content-bg,
    $kendo-scheduler-adaptive-border-width: $kendo-scheduler-adaptive-border-width,
    $kendo-scheduler-adaptive-font-family: $kendo-scheduler-adaptive-font-family,
    $kendo-scheduler-adaptive-font-size: $kendo-scheduler-adaptive-font-size,
    $kendo-scheduler-adaptive-line-height: $kendo-scheduler-adaptive-line-height,
    $kendo-scheduler-adaptive-current-text: $kendo-scheduler-adaptive-current-text,
    $kendo-scheduler-adaptive-base-text: $kendo-scheduler-adaptive-base-text,
    $kendo-scheduler-adaptive-subtle-text: $kendo-scheduler-adaptive-subtle-text,
    $kendo-scheduler-recurrence-fields-row-gap: $kendo-scheduler-recurrence-fields-row-gap
);
