// ------------------------------------------------------------------
// Base layout rules, use the 'webclient.scss' file for styling
// ------------------------------------------------------------------
html {
    height: 100%;

    .o_web_client {
        height: 100%;
        display: flex;
        flex-flow: column nowrap;

        > .o_main {
            flex: 1 1 auto;
            display: flex;
            min-height: 0; // Allow flex to shrink this element as much as it wants
            height: 100%;

            .o_main_content {
                flex: 1 1 auto;
                display: flex;
                flex-flow: column nowrap;

                .o_control_panel {
                    flex: 0 0 auto;
                }
                .o_content {
                    flex: 1 1 auto;
                    height: 100%;
                    overflow: auto;
                    position: relative;

                    > .o_view_controller {
                        @include o-position-absolute(0, 0, 0, 0);  // Get the 100% height of its flex parent
                        height: 100%;
                    }
                }
            }
        }

        &.o_fullscreen {
            .o_main_navbar {
                display: none;
            }
        }

        .o_main_navbar {
            flex: 0 0 auto;
        }

        .o_control_panel {
            flex: 0 0 auto;
        }

        .o_content {
            direction: ltr; //Define direction attribute here so when rtlcss preprocessor run, it converts it to rtl
            flex: 1 1 auto;
            position: relative;  // Allow to redistribute the 100% height to its child

            > .o_view_controller {
                position: absolute;  // Get the 100% height of its flex parent
                top: 0;
                right: 0;
                bottom: 0;
                left: 0;
                height: 100%;
                direction: ltr;
            }
        }
    }

    .o_loading {
        position: fixed;
        bottom: 0;
        right: 0;
        z-index: $zindex-modal + 1;
    }
}

@media print {
    html .o_web_client {
        .o_main_navbar {
            display: none;
        }
        .o_content {
            position: static;
            overflow: visible;
            height: auto;
        }
    }
}
