@use "sass:map";
@use "sass:math";
@use "../core/_index.scss" as *;
@use "../core/spacing/_index.scss" as *;

/// The border width of the Gantt.
/// @group gantt
$kendo-gantt-border-width: 1px !default;
/// The font family of the Gantt.
/// @group gantt
$kendo-gantt-font-family: var( --kendo-font-family, initial ) !default;
/// The font size of the Gantt.
/// @group gantt
$kendo-gantt-font-size: var( --kendo-font-size, initial ) !default;
/// The line height of the Gantt.
/// @group gantt
$kendo-gantt-line-height: var( --kendo-line-height, initial ) !default;
/// The background color of the Gantt.
/// @group gantt
$kendo-gantt-bg: k-color(surface-alt) !default;
/// The text color of the Gantt.
/// @group gantt
$kendo-gantt-text: k-color(on-app-surface) !default;
/// The border color of the Gantt.
/// @group gantt
$kendo-gantt-border: color-mix(in srgb, k-color(border) 16%, transparent) !default;

/// The background color of the Gantt non-working days.
/// @group gantt
$kendo-gantt-nonwork-bg: color-mix(in srgb, k-color(on-app-surface) 4%, transparent) !default;
/// The text color of the Gantt non-working days.
/// @group gantt
$kendo-gantt-nonwork-text: inherit !default;
/// The border color of the Gantt non-working days.
/// @group gantt
$kendo-gantt-nonwork-border: inherit !default;

/// The size of the Gantt connecting lines.
/// @group gantt
$kendo-gantt-line-size: 2px !default;
/// The background fill color of the Gantt connecting lines.
/// @group gantt
$kendo-gantt-line-fill: black !default;
/// The background fill of the selected Gantt connecting lines.
/// @group gantt
$kendo-gantt-line-selected-fill: k-color(primary-active) !default;

/// The size of the Gantt task dot.
/// @group gantt
$kendo-gantt-dot-size: 8px !default;
/// The spacing of the Gantt task dot.
/// @group gantt
$kendo-gantt-dot-spacing: k-spacing(0.5) !default;
/// The background color of the Gantt task dot.
/// @group gantt
$kendo-gantt-dot-bg: k-color(on-app-surface) !default;
/// The border color of the Gantt task dot.
/// @group gantt
$kendo-gantt-dot-border: k-color(on-app-surface) !default;
/// The background color of the hovered Gantt task dot.
/// @group gantt
$kendo-gantt-dot-hover-bg: k-color(app-surface) !default;
/// The border color of the hovered Gantt task dot.
/// @group gantt
$kendo-gantt-dot-hover-border: k-color(on-app-surface) !default;

/// The background color of the Gantt milestone.
/// @group gantt
$kendo-gantt-milestone-bg: $kendo-gantt-text !default;
/// The border color of the Gantt milestone.
/// @group gantt
$kendo-gantt-milestone-border: $kendo-gantt-text !default;
/// The background color of the selected Gantt milestone.
/// @group gantt
$kendo-gantt-milestone-selected-bg: k-color(primary) !default;
/// The border color of the selected Gantt milestone.
/// @group gantt
$kendo-gantt-milestone-selected-border: k-color(primary) !default;

/// The background color of the Gantt summary.
/// @group gantt
$kendo-gantt-summary-bg: k-color(subtle) !default;
/// The background color of the Gantt summary progress.
/// @group gantt
$kendo-gantt-summary-progress-bg: k-color(on-app-surface) !default;
/// The background color of the selected Gantt summary.
/// @group gantt
$kendo-gantt-summary-selected-bg: k-color(primary-subtle-active) !default;
/// The background color of the selected Gantt summary progress.
/// @group gantt
$kendo-gantt-summary-progress-selected-bg: k-color(primary) !default;

/// The border width of the Gantt task.
/// @group gantt
$kendo-gantt-task-border-width: 0px !default;
/// The horizontal padding of the Gantt task.
/// @group gantt
$kendo-gantt-task-padding-x: k-spacing(2) !default;
/// The vertical padding of the Gantt task.
/// @group gantt
$kendo-gantt-task-padding-y: k-spacing(1) !default;
/// The background color of the Gantt task.
/// @group gantt
$kendo-gantt-task-bg: k-color(subtle) !default;
/// The text color of the Gantt task.
/// @group gantt
$kendo-gantt-task-text: k-color(app-surface) !default;
/// The border color of the Gantt task.
/// @group gantt
$kendo-gantt-task-border: inherit !default;
/// The background color of the Gantt task progress.
/// @group gantt
$kendo-gantt-task-progress-bg: k-color(on-app-surface) !default;
/// The background color of the hovered Gantt task progress.
/// @group gantt
$kendo-gantt-task-progress-hover-bg: k-color(on-app-surface) !default;
/// The background color of selected the Gantt task.
/// @group gantt
$kendo-gantt-task-selected-bg: k-color(primary-subtle-active) !default;
/// The text color of the selected Gantt task.
/// @group gantt
$kendo-gantt-task-selected-text: k-color(app-surface) !default;
/// The border color of the selected Gantt task.
/// @group gantt
$kendo-gantt-task-selected-border: transparent !default;
/// The background color of the selected Gantt task progress.
/// @group gantt
$kendo-gantt-task-progress-selected-bg: k-color(primary) !default;

/// The vertical padding of the Gantt task actions.
/// @group gantt
$kendo-gantt-task-actions-padding-y: k-spacing(1) !default;
/// The horizontal padding of the Gantt task actions.
/// @group gantt
$kendo-gantt-task-actions-padding-x: k-spacing(2) !default;

/// The vertical margin of the Gantt task planned line.
/// @group gantt
$kendo-gantt-planned-margin-y: .45em !default;
/// The border width of the Gantt task planned line.
/// @group gantt
$kendo-gantt-planned-border-width: 2px !default;
/// The line height of the Gantt task planned line.
/// @group gantt
$kendo-gantt-planned-line-height: .85em !default;

/// The vertical margin of the Gantt planned dependencies.
/// @group gantt
$kendo-gantt-planned-dependency-margin-y: .65em !default;

/// The default width of the Gantt planned line dot.
/// @group gantt
$kendo-gantt-planned-moment-width: 6px !default;
/// The default height of the Gantt planned line dot.
/// @group gantt
$kendo-gantt-planned-moment-height: $kendo-gantt-planned-moment-width !default;
/// The border radius of the Gantt planned line dot.
/// @group gantt
$kendo-gantt-planned-moment-border-radius: calc( ( #{$kendo-gantt-planned-border-width * 2} + #{$kendo-gantt-planned-moment-width} ) / 2 ) !default;
/// The horizontal margin of the Gantt planned line dot.
/// @group gantt
$kendo-gantt-planned-moment-left-margin-x: calc( #{$kendo-gantt-planned-border-width} / 2 - #{$kendo-gantt-planned-moment-border-radius} ) !default;
/// The horizontal margin of the Gantt milestone planned line dot.
/// @group gantt
$kendo-gantt-planned-milestone-moment-margin-x: math.div( $kendo-gantt-planned-moment-width, 2 ) !default;

/// The default height of the Gantt planned line.
/// @group gantt
$kendo-gantt-planned-duration-height: $kendo-gantt-planned-border-width !default;
/// The height of the hovered Gantt planned line.
/// @group gantt
$kendo-gantt-planned-duration-hover-height: calc( #{$kendo-gantt-planned-border-width} + 1px ) !default;

/// The top position of the Gantt drag hint.
/// @group gantt
$kendo-gantt-planned-single-drag-hint-top: 0 !default;
/// The top position of the Gantt summary drag hint.
/// @group gantt
$kendo-gantt-planned-summary-drag-hint-top: .5em !default;
/// The top position of the Gantt planned milestone drag hint.
/// @group gantt
$kendo-gantt-planned-milestone-drag-hint-top: .3em !default;

/// The horizontal offset of the Gantt delayed task resize handler.
/// @group gantt
$kendo-gantt-planned-offset-resize-handler-margin-x: 1.4em !default;

/// The text color of the Gantt planned Tooltip.
/// @group gantt
$kendo-gantt-planned-text: k-color(app-surface) !default;
/// The background color of the Gantt planned Tooltip.
/// @group gantt
$kendo-gantt-planned-bg: k-color(primary) !default;
/// The border color of the Gantt planned Tooltip.
/// @group gantt
$kendo-gantt-planned-border: k-color(primary) !default;

/// The text color of the Gantt delayed task.
/// @group gantt
$kendo-gantt-delayed-text: k-color(app-surface) !default;
/// The background color of the Gantt delayed task.
/// @group gantt
$kendo-gantt-delayed-bg: k-color(error-emphasis) !default;
/// The complement background color of the Gantt delayed task.
/// @group gantt
$kendo-gantt-delayed-bg-lighter: k-color(error) !default;
/// The background color of the hovered Gantt delayed task.
/// @group gantt
$kendo-gantt-delayed-hover-bg: k-color(error-on-subtle) !default;

/// The background color of the Gantt advanced task.
/// @group gantt
$kendo-gantt-advanced-bg: k-color(success-emphasis) !default;
/// The complement background color of the Gantt advanced task.
/// @group gantt
$kendo-gantt-advanced-bg-lighter: k-color(success) !default;
/// The background color of the hovered Gantt advanced task.
/// @group gantt
$kendo-gantt-advanced-hover-bg: k-color(success-on-subtle) !default;

/// The text color of the Gantt delayed task action.
/// @group gantt
$kendo-gantt-action-on-offset-text: k-color(on-app-surface) !default;
/// The top position of the Gantt delayed task resize handler.
/// @group gantt
$kendo-gantt-offset-resize-handler-top: 50% !default;

/// The default width of the Gantt validation Tooltip.
/// @group gantt
$kendo-gantt-validation-tooltip-width: 200px !default;
/// The default width of the Gantt validation Tooltip label.
/// @group gantt
$kendo-gantt-validation-tooltip-label-width: 50px !default;
/// The border color of the Gantt validation Tooltip.
/// @group gantt
$kendo-gantt-validation-tooltip-border: color-mix(in srgb, k-color(border) 16%, transparent) !default;
/// The border color of the valid Gantt validation Tooltip.
/// @group gantt
$kendo-gantt-validation-tooltip-valid-border: k-color(success) !default;
/// The border color of the invalid Gantt validation Tooltip.
/// @group gantt
$kendo-gantt-validation-tooltip-invalid-border: k-color(error) !default;
