@use "../core/_index.scss" as *;
@use "./_variables.scss" as *;
@use "@progress/kendo-theme-core/scss/components/panelbar/_layout.scss" as *;

@mixin kendo-panelbar--layout() {
    @include kendo-panelbar--layout-base();

    .k-panelbar {

        > .k-panelbar-header {

            > .k-link {
                padding-inline-start: $kendo-panelbar-header-padding-x-start;
                padding-inline-end: $kendo-panelbar-header-padding-x-end;
                padding-block: $kendo-panelbar-header-padding-y;
                font-weight: normal;

                &.k-selected {
                    font-weight: var(--kendo-font-weight-semibold, 600 );
                }

                &:focus,
                &.k-focus {
                    border-radius: k-border-radius(md);
                }

                &.k-hover,
                &:hover {
                    border-radius: k-border-radius(md);
                }
            }
        }

        .k-panelbar-item-icon:first-child {
            position: absolute;
            inset-inline-start: $kendo-panelbar-icon-spacing;
        }

        .k-panelbar-group > .k-panelbar-item {
            > .k-link {
                padding-inline-start: $kendo-panelbar-item-padding-x-start;
                padding-inline-end: $kendo-panelbar-item-padding-x-end;
                padding-block: $kendo-panelbar-item-padding-y;

                &.k-selected {
                    font-weight: var(--kendo-font-weight-semibold, 600 );
                }

                &:focus,
                &.k-focus,
                &:hover,
                &.k-hover {
                    border-radius: k-border-radius(md);
                }
            }

            @for $i from 1 through $kendo-panelbar-item-level-count {
                &.k-level-#{$i} {
                    $_link-spacing: calc( #{k-spacing(3)} * #{$i} );
                    $_item-padding: $kendo-panelbar-item-padding-x-start;

                    .k-link {
                        padding-inline-start: calc( $kendo-panelbar-item-padding-x-start + $_link-spacing );
                    }

                    .k-panelbar-item-icon:first-child {
                        inset-inline-start: calc( $kendo-panelbar-icon-spacing + $_link-spacing );
                    }
                }
            }
        }
    }
}
