.flex-row { display: flex; flex-direction: row; } .flex-col { display: flex; flex-direction: column; } .horizontal-spacer { margin-right: 1em; } .vertical-spacer { margin-bottom: 1em; } .outer-container { height: 100%; background-color: #212427; color: #fff; padding: 1em; } .navigation-bar { background-color: #212427; flex-grow: 1; padding: 0.25em 1em 0.25em 1em; border: 1px solid #3c3f42; border-radius: 4px; } .inner-container { height: 100%; flex-grow: 1; overflow: hidden; } .contents-view { height: 100%; flex-basis: 0; flex-grow: 4; background-color: #151515; border: 1px solid #3c3f42; border-radius: 4px; padding: 0.5em; display: flex; flex-flow: row wrap; justify-content: flex-start; align-items: flex-start; align-content: flex-start; overflow: auto; } .nav-item { margin: 0.5em; flex: 0; display: flex; flex-direction: column; align-items: center; cursor: pointer; } .nav-item .nav-item-title { text-align: center; overflow-wrap: anywhere; } .nav-item .nav-dir-icon { background-color: #212427; border: 1px solid #3c3f42; width: 5em; height: 4em; } .nav-item .nav-file-icon { position: relative; background-color: #212427; width: 5em; height: 4em; } .nav-item .nav-file-icon:before { content: ""; position: absolute; top: 0; right: 0; border-width: 0 16px 16px 0; border-style: solid; border-color: #3c3f42 #151515; display: block; width: 0; } .info-column { background-color: #212427; flex-basis: 0; flex-grow: 1; padding: 1em; border: 1px solid #3c3f42; border-radius: 4px; }