:host { display: flex; width: 100vw; height: 100vh; flex-direction: column; overflow: hidden; user-select: none; -webkit-user-drag: none; -webkit-font-smoothing: antialiased; will-change: transform; cursor: default; animation: 0.5s ease-out fadeIn; transition: 0.25s background; } $tabs-height: 38px; $tab-border-radius: 4px; $side-tab-width: 200px; .wrap { display: flex; width: 100vw; height: 100vh; flex-direction: row; } .content { width: 100vw; flex: 1 1 0; min-height: 0; display: flex; flex-direction: column-reverse; &.tabs-on-top { flex-direction: column; } &.tabs-on-side { flex-direction: row-reverse; &.tabs-on-top { flex-direction: row; } } } .content.tabs-on-side > .tab-bar { height: 100%; width: $side-tab-width; overflow-y: auto; overflow-x: hidden; flex-direction: column; background: rgba(0, 0, 0, 0.25); .tabs { width: $side-tab-width; flex: none; flex-direction: column; tab-header { flex: 0 0 $tabs-height; } } .drag-space { flex: auto; } &>.inset { opacity: 0; } } .tab-bar { flex: none; height: $tabs-height; display: flex; width: 100%; .btn-tab-bar { line-height: $tabs-height + 2px; height: $tabs-height; cursor: pointer; display: flex; align-items: center; padding: 0 15px; flex: 0 0 auto; border-bottom: 2px solid transparent; transition: 0.25s all; font-size: 12px; text-transform: uppercase; font-weight: bold; color: #aaa; border: none; border-radius: 0; align-items: center; &.dropdown-toggle::after { display: none; } } &>.tabs { flex: 0 1 auto; display: flex; min-width: 0; } &>.drag-space { min-width: 1px; flex: 1 0 1%; margin-top: 2px; // for window resizing -webkit-app-region: drag; &.persistent { min-width: 72px; // 2 x 36 px height, ie 2 squares } } & > .inset { width: 85px; height: $tabs-height; flex: none; -webkit-app-region: drag; } window-controls { padding-left: 10px; } } .content { flex: 1 1 0; position: relative; min-height: 0; min-width: 0; > .content-tab { position: absolute; top: 0; width: 100%; height: 100%; left: -1000%; &.content-tab-active { left: 0; } } } hotkey-hint { position: absolute; bottom: 0; right: 0; max-width: 300px; } ::ng-deep .btn-tab-bar svg, ::ng-deep .btn-tab-bar + .dropdown-menu svg { width: 16px; height: 16px; fill: white; fill-opacity: 0.75; } .icon-wrapper { display: flex; width: 16px; height: 17px; } ::ng-deep .btn-update svg { fill: cyan; } .transfers-dropdown-menu { min-width: 300px; .transfer { display: flex; align-items: center; padding: 5px 0 5px 25px; .main { margin-right: auto; label { margin-bottom: 5px; } } > i { margin-right: 10px; } } }