.lm_root {
    position: relative;
}


/* ===========================================================
   ИСПРАВЛЕНИЕ ДЛЯ 125% / 150% / 175% WINDOWS SCALE (4K)
   GoldenLayout 1.x по умолчанию использует float:left.

   При дробной ширине экрана, например 2592.8px, браузер
   округляет ширины панелей и последняя колонка может
   переноситься вниз за границу layoutContainer.

   flex + nowrap предотвращает перенос, а flex:0 0 auto
   оставляет главными явные px-ширины от самого GL
   (flex:1 1 auto спорил с ними и давил правую панель в 0
   на дробном масштабе -> чёрный фон вместо виджета).
   Остаток дробных пикселей добивает glFractionRepair()
   в index.html. Лишний 1px просто обрезается overflow.
   =========================================================== */

.lm_row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.lm_row > .lm_item {
    float: none !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    box-sizing: border-box;
}


/* Горизонтальный splitter тоже не должен float-иться.
   Он остаётся между колонками и сохраняет свою ширину. */

.lm_row > .lm_splitter.lm_horizontal {
    float: none !important;
    flex: 0 0 auto !important;
    min-width: 0;
}


/* Вертикальные колонки GoldenLayout. */

.lm_column {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
}

.lm_column > .lm_item {
    float: none !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    box-sizing: border-box;
}

.lm_column > .lm_splitter.lm_vertical {
    float: none !important;
    flex: 0 0 auto !important;
    min-height: 0;
}


/* ===========================================================
   ОСТАЛЬНОЙ ИСХОДНЫЙ CSS GOLDENLAYOUT
   =========================================================== */

.lm_content {
    overflow: hidden;
}

.lm_dragging,
.lm_dragging * {
    cursor: move !important;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none;
}

.lm_maximised {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 40;
}

.lm_maximise_placeholder {
    display: none;
}

.lm_splitter {
    position: relative;
    z-index: 2;
}

.lm_splitter:hover {
    background: orange;
}

.lm_splitter.lm_vertical .lm_drag_handle {
    position: absolute;
    height: 25px;
    top: -10px;
    cursor: n-resize;
    width: 100%;
}

.lm_splitter.lm_horizontal {
    height: 100%;
}

.lm_splitter.lm_horizontal .lm_drag_handle {
    position: absolute;
    width: 25px;
    left: -10px;
    cursor: e-resize;
    height: 100%;
}

.lm_header {
    position: relative;
    overflow: visible;
}

.lm_header * {
    box-sizing: content-box !important;
}

.lm_header > ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.lm_header .lm_controls {
    right: 3px;
    position: absolute;
}

.lm_header .lm_controls > li {
    width: 18px;
    height: 18px;
    float: left;
    text-align: center;
    cursor: pointer;
}

.lm_header .lm_tabs {
    position: absolute;
}

.lm_header .lm_tab {
    float: left;
    padding: 0px 10px 5px;
    height: 14px;
    margin-top: 1px;
    cursor: pointer;
    position: relative;
    padding-right: 25px;
}

.lm_header .lm_tab i {
    height: 19px;
    width: 2px;
    position: absolute;
}

.lm_header .lm_tab i.lm_left {
    left: -2px;
    top: 0;
}

.lm_header .lm_tab i.lm_right {
    right: -2px;
    top: 0;
}

.lm_header .lm_tab .lm_title {
    text-overflow: ellipsis;
    display: inline-block;
    overflow: hidden;
}

.lm_header .lm_tab .lm_close_tab {
    position: absolute;
    right: 0;
    top: 0;
    width: 14px;
    height: 14px;
    text-align: center;
}

.lm_drop_tab_placeholder {
    width: 100px;
    height: 10px;
    float: left;
    visibility: hidden;
}


/***********************************
* Drag Proxy
***********************************/

.lm_dragProxy {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
}

.lm_dragProxy .lm_header {
    background: transparent;
}

.lm_dragProxy .lm_content {
    border-top: none;
    overflow: hidden;
}

.lm_dropTargetIndicator {
    position: absolute;
    z-index: 2;
    display: none;
}

.lm_dropTargetIndicator .lm_inner {
    position: relative;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
}

.lm_transition_indicator {
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 20px;
    height: 20px;
    z-index: 2;
}

.lm_popin {
    width: 20px;
    height: 20px;
    position: absolute;
    z-index: 9999;
    bottom: 0;
    right: 0;
}

.lm_popin > * {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.lm_popin > .lm_bg {
    z-index: 1;
}

.lm_popin > .lm_icon {
    z-index: 2;
}