@use "sass:map";
@use "../core/_index.scss" as *;
@use "../list/_variables.scss" as *;

/// The width of the table border.
/// @group table
$kendo-table-border-width: 1px !default;

/// The width of vertical border of table cells.
/// @group table
$kendo-table-cell-vertical-border-width: 0px !default;
/// The width of horizontal border of table cells.
/// @group table
$kendo-table-cell-horizontal-border-width: 1px !default;
/// The horizontal padding of the cells in the table if no size is specified.
/// @group table
$kendo-table-cell-padding-x: k-spacing(3) !default;
/// The vertical padding of the cells in the table if no size is specified.
/// @group table
$kendo-table-cell-padding-y: k-spacing(3) !default;

$kendo-table-sm-cell-padding-x: k-spacing(3) !default;
$kendo-table-sm-cell-padding-y: k-spacing(1.5) !default;

$kendo-table-md-cell-padding-x: $kendo-table-cell-padding-x !default;
$kendo-table-md-cell-padding-y: $kendo-table-cell-padding-y !default;

$kendo-table-lg-cell-padding-x: k-spacing(3) !default;
$kendo-table-lg-cell-padding-y: k-spacing(3.5) !default;

$kendo-table-sm-cell-padding-x: k-spacing(3) !default;
$kendo-table-sm-cell-padding-y: k-spacing(1.5) !default;

$kendo-table-md-cell-padding-x: $kendo-table-cell-padding-x !default;
$kendo-table-md-cell-padding-y: $kendo-table-cell-padding-y !default;

$kendo-table-lg-cell-padding-x: k-spacing(3) !default;
$kendo-table-lg-cell-padding-y: k-spacing(3.5) !default;

/// Font weight of the table header cells.
/// @group table
$kendo-table-header-font-weight: var( --kendo-font-weight-bold, normal ) !default;

/// The sizes of the table.
/// @group table
$kendo-table-sizes: (
    sm: (
        font-size: var( --kendo-font-size, inherit ),
        line-height: var( --kendo-line-height, inherit ),
        cell-padding-x: $kendo-table-sm-cell-padding-x,
        cell-padding-y: $kendo-table-sm-cell-padding-y,
        group-label-padding-x: $kendo-list-item-group-label-sm-padding-x,
        group-label-padding-y: $kendo-list-item-group-label-sm-padding-y,
        group-label-font-size: $kendo-list-item-group-label-sm-font-size
    ),
    md: (
        font-size: var( --kendo-font-size, inherit ),
        line-height: var( --kendo-line-height, inherit ),
        cell-padding-x: $kendo-table-md-cell-padding-x,
        cell-padding-y: $kendo-table-md-cell-padding-y,
        group-label-padding-x: $kendo-list-item-group-label-md-padding-x,
        group-label-padding-y: $kendo-list-item-group-label-md-padding-y,
        group-label-font-size: $kendo-list-item-group-label-md-font-size
    ),
    lg: (
        font-size: var( --kendo-font-size, inherit ),
        line-height: var( --kendo-line-height, inherit ),
        cell-padding-x: $kendo-table-lg-cell-padding-x,
        cell-padding-y: $kendo-table-lg-cell-padding-y,
        group-label-padding-x: $kendo-list-item-group-label-lg-padding-x,
        group-label-padding-y: $kendo-list-item-group-label-lg-padding-y,
        group-label-font-size: $kendo-list-item-group-label-lg-font-size
    )
) !default;

/// Background color of tables.
/// @group table
$kendo-table-bg: var( --kendo-component-bg, initial ) !default;
/// Text color of tables.
/// @group table
$kendo-table-text: var( --kendo-component-text, initial ) !default;
/// Border color of tables.
/// @group table
$kendo-table-border: var( --kendo-component-border, initial ) !default;

/// Background color of table headers.
/// @group table
$kendo-table-header-bg: $kendo-table-bg !default;
/// Text color of table headers.
/// @group table
$kendo-table-header-text: if($kendo-enable-color-system, k-color( on-app-surface ), k-get-theme-color-var( neutral-190 )) !default;
/// Border color of table headers.
/// @group table
$kendo-table-header-border: $kendo-table-border !default;

/// Text color of the sticky table header.
/// @group table
$kendo-table-sticky-header-text: $kendo-list-header-text !default;
/// Background color of the sticky table header.
/// @group table
$kendo-table-sticky-header-bg: $kendo-list-header-bg !default;
/// Border color of the sticky table header.
/// @group table
$kendo-table-sticky-header-border: $kendo-list-header-border !default;
/// Shadow of the sticky table header.
/// @group table
$kendo-table-sticky-header-shadow: $kendo-list-header-shadow !default;

/// Background color of table footers.
/// @group table
$kendo-table-footer-bg: $kendo-table-header-bg !default;
/// Text color of table footers.
/// @group table
$kendo-table-footer-text: $kendo-table-header-text !default;
/// Border color of table footers.
/// @group table
$kendo-table-footer-border: $kendo-table-header-border !default;

/// Background color of group rows in table.
/// @group table
$kendo-table-group-row-bg: $kendo-table-header-bg !default;
/// Text color of group rows in table.
/// @group table
$kendo-table-group-row-text: $kendo-table-header-text !default;
/// Border color of group rows in table.
/// @group table
$kendo-table-group-row-border: $kendo-table-header-border !default;

/// Text color of group label in table.
/// @group table
$kendo-table-group-label-text: $kendo-list-bg !default;
/// Background color of group label in table.
/// @group table
$kendo-table-group-label-bg: $kendo-list-text !default;

/// Background color of alternating rows in table.
/// @group table
$kendo-table-alt-row-bg: initial !default;
/// Text color of alternating rows in table.
/// @group table
$kendo-table-alt-row-text: $kendo-table-text !default;
/// Border color of alternating rows in table.
/// @group table
$kendo-table-alt-row-border: $kendo-table-border !default;

/// Background color of hovered rows in table.
/// @group table
$kendo-table-hover-bg: var( --kendo-hover-bg, inherit ) !default;
/// Text color of hovered rows in table.
/// @group table
$kendo-table-hover-text: var( --kendo-hover-text, inherit ) !default;
/// Border color of hovered rows in table.
/// @group table
$kendo-table-hover-border: $kendo-table-border !default;

/// Background color of focused rows in table.
/// @group table
$kendo-table-focus-bg: inherit !default;
/// Text color of focused rows in table.
/// @group table
$kendo-table-focus-text: inherit !default;
/// Border color of focused rows in table.
/// @group table
$kendo-table-focus-border: inherit !default;
/// Box shadow of focused rows in table.
/// @group table
$kendo-table-focus-shadow: $kendo-list-item-focus-shadow !default;

/// Background color of selected rows in table.
/// @group table
$kendo-table-selected-bg: if($kendo-enable-color-system, color-mix(in srgb, k-color( primary ) 13%, transparent), k-get-theme-color-var( primary-20 )) !default;
/// Text color of selected rows in table.
/// @group table
$kendo-table-selected-text: $kendo-table-text !default;
/// Border color of selected rows in table.
/// @group table
$kendo-table-selected-border: $kendo-table-border !default;

/// Hover background color of selected rows in table.
/// @group table
$kendo-table-selected-hover-bg: if($kendo-enable-color-system, color-mix(in srgb, k-color( primary ) 26%, transparent), k-get-theme-color-var( primary-30 )) !default;
/// Hover text color of selected rows in table.
/// @group table
$kendo-table-selected-hover-text: $kendo-table-selected-text !default;
/// Hover border color of selected rows in table.
/// @group table
$kendo-table-selected-hover-border: $kendo-table-selected-border !default;

/// The box shadow of the row spanned cells.
/// @group table
$kendo-table-cell-row-span-shadow: inset 0 0 0 1px $kendo-table-border !default;
