@use "mixins";

/**
 * Copyright JS Foundation and other contributors, http://js.foundation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 **/

#red-ui-sidebar {
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    width: 315px;
    background: var(--red-ui-primary-background);
    box-sizing: border-box;
    z-index: 10;
    @include mixins.component-border;
}

#red-ui-sidebar.closing {
    border-style: dashed;
}

#red-ui-sidebar-content {
    position: absolute;
    background: var(--red-ui-secondary-background);
    top: 35px;
    right: 0;
    bottom: 25px;
    left: 0px;
    overflow-y: auto;
}

#red-ui-sidebar-separator {
    position: absolute;
    top: 5px;
    right: 315px;
    bottom:10px;
    width: 7px;
    // z-index: 11;
    background-color: var(--red-ui-primary-background);
    cursor: col-resize;

    &:before {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        -webkit-mask-image: url(images/grip.svg);
        mask-image: url(images/grip.svg);
        -webkit-mask-size: auto;
        mask-size: auto;
        -webkit-mask-position: 50% 50%;
        mask-position: 50% 50%;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        background-color: var(--red-ui-grip-color);
    }
}

.red-ui-sidebar-closed > #red-ui-sidebar { display: none; }
.red-ui-sidebar-closed > #red-ui-sidebar-separator { right: 0px !important; }
.red-ui-sidebar-closed > #red-ui-workspace { right: 7px !important; }
.red-ui-sidebar-closed > #red-ui-editor-stack { right: 8px !important; }

#red-ui-sidebar .button {
    @include mixins.workspace-button;
    line-height: 18px;
    font-size: 12px;
    margin-right: 5px;
    padding: 2px 8px;
}

.sidebar-header, /* Deprecated -> red-ui-sidebar-header */
.red-ui-sidebar-header {
    color: var(--red-ui-primary-text-color);
    text-align: right;
    padding: 8px 10px;
    background: var(--red-ui-primary-background);
    border-bottom: 1px solid var(--red-ui-secondary-border-color);
    white-space: nowrap;
}

/* Deprecated -> red-ui-footer-button */
.sidebar-footer-button {
    @include mixins.component-footer-button;
}
/* Deprecated -> red-ui-footer-button-toggle */
.sidebar-footer-button-toggle {
    @include mixins.component-footer-button-toggle;
}

a.sidebar-header-button,
button.sidebar-header-button, /* Deprecated -> red-ui-sidebar-header-button */
a.red-ui-sidebar-header-button,
button.red-ui-sidebar-header-button {
    @include mixins.workspace-button;
    font-size: 13px;
    line-height: 13px;
    padding: 5px 8px;
    &.toggle {
        @include mixins.workspace-button-toggle;
    }
}

a.sidebar-header-button-toggle, /* Deprecated -> red-ui-sidebar-header-button-toggle */
button.sidebar-header-button-toggle, /* Deprecated -> red-ui-sidebar-header-button-toggle */
a.red-ui-sidebar-header-button-toggle,
button.red-ui-sidebar-header-button-toggle {
    @include mixins.workspace-button-toggle;
    font-size: 13px;
    line-height: 13px;
    padding: 5px 8px;
}

.sidebar-header-button:not(:first-child), /* Deprecated -> red-ui-sidebar-header-button */
.red-ui-sidebar-header-button:not(:first-child) {
    border-left: none;
}

.red-ui-sidebar-shade {
    @include mixins.shade;
}


@mixin red-ui-sidebar-control {
    display: none;
    position: absolute;
    top: calc(50% - 26px);

    padding:15px 8px;
    border:1px solid var(--red-ui-primary-border-color);
    background:var(--red-ui-primary-background);
    color: var(--red-ui-secondary-text-color);
    text-align: center;
    cursor: pointer;
}

.red-ui-sidebar-control-right {
    @include red-ui-sidebar-control;
    right: calc(100%);
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    z-index: 13;
}
.red-ui-sidebar-control-left {
    @include red-ui-sidebar-control;
    left: calc(100%);
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}
