@import (reference) '../../customize/src/less2/include/sidebar-layout.less';
@import (reference) "../../customize/src/less2/include/limit-bar.less";
@import (reference) "../../customize/src/less2/include/creation.less";
@import (reference) '../../customize/src/less2/include/framework.less';

&.cp-app-settings {
    .framework_min_main(
        @bg-color: @colortheme_settings-bg,
        @warn-color: @colortheme_settings-warn,
        @color: @colortheme_settings-color
    );
    .sidebar-layout_main();
    .limit-bar_main();
    .creation_main();

    display: flex;
    flex-flow: column;
    font: @colortheme_app-font;

    #cp-export-container {
        font-size: 16px;
        display: flex;
        flex: 1;
        min-height: 0;
        align-items: center;
        justify-content: center;
        .cp-export-block {
            width: 800px;
            max-width: 90vw;
            .cp-export-progress-bar-container {
                height: 24px;
                background: white;
                border: 1px solid #DDD;
                width: 80%;
                margin: auto;
                position: relative;
                .cp-export-progress-bar {
                    height: 100%;
                    background: #5cb85c; // Same color as loading screen bar
                    width: 0%;
                    display: inline-block;
                }
                .cp-export-progress-text {
                    position: absolute;
                    top: 0;
                    right: 0;
                    left: 0;
                    bottom: 0;
                    text-align: center;
                    font-weight: bold;
                }
            }
            & > p {
                color: #777;
            }
            .cp-export-progress {
                margin-bottom: 1rem;
                p {
                    margin-bottom: 0;
                    display: flex;
                    align-items: center;
                    padding: 5px 0;
                    .fa {
                        width: 25px;
                    }
                }
            }
            .cp-export-actions {
                display: flex;
                flex-flow: row-reverse;
                .btn-default, .btn-primary {
                    margin-left: 20px;
                }
            }
            .cp-export-errors {
                display: none;
                overflow-x: auto;
                max-height: 300px;
                background: #ededed;
                border: 1px solid #777;
                padding: 5px 20px;
                margin-top: 1rem;
                & > p {
                    margin: 0;
                }
                .cp-export-errors-list {
                    & > div {
                        padding: 5px 10px;
                        margin: 5px 0;
                        background: #dedede;
                        .title {
                            font-weight: bold;
                        }
                        .link {
                            padding: 0 20px;
                            font-size: 14px;
                        }
                        .reason {
                            padding: 0 20px;
                            color: #777;
                        }
                    }
                }
            }
        }
    }

    #cp-sidebarlayout-container {
        #cp-sidebarlayout-rightside {
            input[type="checkbox"] {
                vertical-align: middle;
                margin-right: 5px;
            }
            .cp-settings-cursor-color-picker {
                display: inline-block;
                vertical-align: middle;
                height: 25px;
                width: 70px;
                margin-right: 10px;
                cursor: pointer;
                border: 1px solid black;
            }
            .cp-settings-language-selector {
                button.btn {
                    width: @sidebar_button-width;
                    background-color: @colortheme_sidebar-button-alt-bg;
                    border-color: #adadad;
                    color: black;
                    &:hover {
                        background-color: darken(@colortheme_sidebar-button-alt-bg, 15%);
                    }
                }
            }
            .cp-sidebarlayout-input-block {
                input {
                    border-top-right-radius: 0;
                    border-bottom-right-radius: 0;
                    padding: 5px;
                    padding-left: 15px;
                    &[type="number"] {
                        border-right: 1px solid #adadad;
                    }
                    &[type="checkbox"] {
                        margin-right: 100%;
                    }
                }
            }
            .cp-settings-info-block {
                [type="text"] {
                    width: @sidebar_button-width;
                }
            }

            .cp-settings-autostore-radio {
                display: flex;
                align-items: center;
                flex-wrap: wrap;
                label {
                    margin-right: 40px;
                }
            }

            .cp-settings-change-password, .cp-settings-migrate {
                [type="password"], [type="text"] {
                    width: @sidebar_button-width;
                    flex: unset;
                }
                button {
                    margin-top: 5px;
                }
            }
            .cp-settings-drive-backup {
                button {
                    span.fa {
                        margin-right: 5px;
                    }
                    margin-right: 5px;
                }
            }
            .cp-settings-creation-owned, .cp-settings-creation-expire,
            .cp-settings-creation-skip, .cp-settings-creation-template {
                input[type="radio"] {
                    display: none;
                    &:checked {
                        & + label {
                            font-weight: bold;
                            background-color: lighten(@colortheme_loading-bg, 20%);
                            cursor: default;
                            border: 1px solid #c1158e;
                            color: @colortheme_loading-color;
                            &:hover {
                                background-color: lighten(@colortheme_loading-bg, 20%);
                            }
                        }
                    }
                }
                input[type="radio"] + label {
                    .tools_unselectable();
                    display: inline-flex;
                    align-items: center;
                    justify-content: center;
                    width: 200px;
                    height: 50px;
                    padding: 5px;
                    margin: 0 20px;
                    border: 1px solid black;
                    cursor: pointer;
                    &:hover {
                        background-color: lighten(@colortheme_loading-bg, 10%);
                    }
                }
                .fa {
                    margin-left: 50px;
                }
            }
            .cp-settings-creation-skipped {
                display: none !important; // we have to override an inline style attribute
            }
            .cp-settings-creation-expire {
                #cp-creation-expire-true {
                    display: none;
                    &:checked {
                        & + label {
                            height: 100px;
                            .cp-creation-expire-picker {
                                display: inline;
                            }
                        }
                    }
                }
                label[for="cp-creation-expire-true"] {
                    flex-wrap: wrap;
                    .cp-creation-expire-picker {
                        display: none;
                    }
                    input {
                        width: 70px;
                    }
                    select {
                        width: 100px;
                    }
                    input, select {
                        border: none;
                        height: 30px;
                        background: @colortheme_loading-bg;
                        color: @colortheme_loading-color;
                        border-radius: 3px;
                    }
                }
            }
        }
    }

    .cp-app-settings-delete-alert {
        pre { color: inherit; }
    }
}