.containers { height: 100%; display: flex; flex-direction: column; .containers-body { flex: 1; display: flex; flex-direction: row; .sidebar { display: flex; flex-direction: column; min-width: 280px; margin: 0; box-sizing: border-box; border-right: 1px solid #eee; .sidebar-header { flex: 0 auto; min-width: 240px; min-height: 42px; display: flex; border-bottom: 1px solid transparent; transition: border-bottom 0.25s; padding: 0px 10px 0px 10px; &.sep { border-bottom: 1px solid #eee; box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.03); } h4 { align-self: flex-start; padding: 0 24px; margin: 14px 0 0; display: inline-block; font-size: 14px; position: relative; } .create { flex: 1 auto; text-align: right; /*.btn { margin-top: 4px; padding: 4px 7px; font-size: 16px; position: relative; .icon { position: relative; top: 3px; left: 1px; } }*/ } } .sidebar-containers { position: relative; flex: 1 auto; overflow-y: scroll; overflow-x: hidden; box-sizing: border-box; max-width: 280px; &.sep { border-top: 1px solid #eee; } ul { margin: 0; min-width: 240px; padding: 0; margin-top: 4px; display: flex; flex-direction: column; a { color: inherit; flex-shrink: 0; cursor: default; margin: 0px 3px 0px 8px; outline: none; padding: 4px 5px; &.active { li { border-bottom: none; border-radius: 40px; background: @brand-primary; .name { color: white; } .image { color: white; opacity: 0.9; } .state-running { .at2x('running-white.png', 20px, 20px); .runningwave { .at2x('runningwave-white.png', 20px, 20px); } } .state-stopped { .at2x('stopped-white.png', 20px, 20px); } .state-downloading { .at2x('downloading-white.png', 20px, 20px); .downloading-arrow { .at2x('downloading-arrow-white.png', 20px, 20px); } } } } &:hover { text-decoration: none; cursor: default; } &:focus { text-decoration: none; } } li { vertical-align: middle; padding: 10px 16px 10px 16px; display: flex; flex-direction: row; .info { font-size: 13px; margin-left: 16px; .name { text-overflow: ellipsis; white-space: nowrap; overflow: hidden; font-size: 14px; font-weight: 400; color: @gray-darkest; } .image { color: @gray-lighter; font-size: 12px; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; } } .state { margin-top: 9px; display: inline-block; position: relative; min-width: 20px; height: 20px; } .state-error { .at2x('error.png', 20px, 20px); } .state-stopped { .at2x('stopped.png', 20px, 20px); } .state-paused { .at2x('paused.png', 20px, 20px); } .state-downloading { .at2x('downloading.png', 20px, 20px); overflow: hidden; .downloading-arrow { width: 20px; height: 20px; .at2x('downloading-arrow.png', 20px, 20px); position: absolute; // background-repeat: repeat; -webkit-animation-name: translatedownload; -webkit-animation-duration: 1.8s; -webkit-animation-iteration-count: infinite; -webkit-animation-timing-function: linear; } } .state-running { .at2x('running.png', 20px, 20px); overflow: hidden; // -webkit-mask-image: -webkit-radial-gradient(circle, white, black); .runningwave { position: absolute; width: 40px; height: 20px; left: -20px; .at2x('runningwave.png', 20px, 20px); // background-repeat: repeat; -webkit-animation-name: translatewave; -webkit-animation-duration: 8.0s; -webkit-animation-iteration-count: infinite; -webkit-animation-timing-function: linear; } } .state-restarting { display: inline-block; width: 20px; height: 20px; .at2x('restarting.png', 20px, 20px); background-repeat: repeat-x; -webkit-animation-delay: -1s; -webkit-animation-name: rotate; -webkit-animation-duration: 3.0s; -webkit-animation-iteration-count: infinite; -webkit-animation-timing-function: linear; } } } } } .no-containers { flex: 1 auto; display: flex; align-items: center; justify-content: center; flex-direction: column; position: relative; h3 { position: relative; top: -44px; font-size: 18px; color: #C7D7D7; } } .details { margin: 0; padding: 0; box-sizing: border-box; flex: 1; display: flex; flex-direction: column; .details-header { flex: 0 auto; display: flex; flex-direction: column; padding: 4px 40px 10px 40px; position: relative; border-bottom: 1px solid #eee; .details-header-actions { flex: 0 auto; display: flex; flex-direction: row; margin-top: 24px; margin-bottom: 6px; position: relative; border-bottom: 1px solid transparent; transition: border-bottom 0.25s; .action { flex: 0 auto; margin-right: 24px; } .details-header-actions-rhs { flex: 1 auto; display: flex; align-items: right; justify-content: flex-end; a.btn { z-index: 0; } } } .details-header-info { display: flex; flex-direction: row; a { position: absolute; right: 30px; top: -4px; } h1 { margin: 0; font-size: 20px; margin: 0; color: @gray-darkest; } h2 { &.status { margin: 8px 0px 0px 16px; text-transform: uppercase; font-weight: bold; font-size: 10px; &.running { color: @brand-positive; } } &.image-label { margin: 8px 0px 0px 30px; font-size: 10px; color: @gray-lighter; } &.image { margin: 5px 0px 0px 16px; font-size: 14px; color: @gray-normal; } } } } .details-progress { margin: 26% auto 0; width: 300px; } .details-panel { flex: 1; overflow: auto; .logs { -webkit-user-select: text; font-family: Menlo; font-size: 12px; padding: 18px 35px; color: lighten(@gray-normal, 6%); white-space: pre-wrap; p { margin: 0 6px; } } .settings { padding: 18px 35px; } } .env-vars-labels { width: 100%; font-size: 12px; color: @gray-lightest; margin-left: 5px; margin-bottom: 5px; .label-key { display: inline-block; margin-right: 30px; width: 20%; } .label-val { display: inline-block; width: 40%; } } .env-vars { margin-bottom: 20px; .keyval-row { margin-bottom: 5px; } input { margin-right: 30px; &.key { width: 20%; } &.val { width: 40%; } } } } } }