body {
    font-family: "Droid Sans Mono", monospace;
}

.limited-row {
    margin: auto;
    max-width: 650px;
}

.dropzone {
    border: 2px dashed #555;
    border-radius: 7px;
    color: #555;
    cursor: pointer;
    display: block;
    font-weight: bold;
    padding: 3em;
    text-align: center;
    transition: background 0.3s, color 0.3s;
}

.dropzone:hover {
    background: #DDD;
}

.dropzone.dark-background {
    background: #DDD;
}

.dropzone:hover,
.dropzone.hover {
    border: 2px solid #3070A5;
}

#file-progress-container {
    height: 38px;
    display: none;
}

#submit-button {
    margin-top: 6px;
    display: none;
}

#app-upload-form {
    display: none;
}

.risk-progress {
    background: #f6f6f6;
    border: 1px solid rgb(43, 109, 159);
    margin-bottom: 15px;
}

.risk-progress-bar {
    position: relative;
    -webkit-transition: 2s ease-in-out;
    -moz-transition: 2s ease-in-out;
    -o-transition: 2s ease-in-out;
    transition: 2s ease-in-out;
    -webkit-transition-property: width, background-color;
    -moz-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
}

.risk-progress > .risk-progress-bar {
    width: 0;
    height: 40px;
    background-color: rgb(0, 255, 0);
}

.risk-progress-bar:before, .risk-progress-bar:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.risk-progress-bar:before {
    bottom: 0;
}

.risk-progress-bar:after {
    bottom: 45%;
    background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
    background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
    background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
}

.details {
    text-overflow: ellipsis;
}

.details-row {
    position: relative;
    border: 1px solid rgb(43, 109, 159);
    border-bottom: 0;
    background-color: #2980b9;
    color: #f6f6f6;
    font-weight: bold;
    overflow: hidden;
    white-space: nowrap;
    padding: 10px 20px;
}

.details-row-progress {
    position: relative;
    border: 1px solid rgb(43, 109, 159);
    border-bottom: 0;
}

.progress-risk-value {
    position: absolute;
    font-weight: bold;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    padding-top: 10px;
}

.tabulator {
    position: relative;
    border: 1px solid rgb(43, 109, 159);
    background-color: #f6f6f6;
    overflow: hidden;
    font-size: 15px;
}

.tabulator .tabulator-header {
    position: relative;
    border-bottom: 1px solid rgb(43, 109, 159);
    background-color: #2980b9;
    color: #f6f6f6;
    font-weight: bold;
    overflow: visible;
    white-space: nowrap;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}

.tabulator-custom-filter {
    padding: 3px;
    width: 100%;
    border: 1px solid rgb(43, 109, 159);
    font-weight: normal;
    background-color: #fff;
    color: #657b83;
}

.tabulator .tabulator-header .tabulator-col {
    display: inline-block;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content {
    position: relative;
    padding: 10px;
    margin-left: 10px;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title {
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: bottom;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title .tabulator-title-editor {
    box-sizing: border-box;
    width: 100%;
    border: 1px solid rgb(43, 109, 159);
    padding: 1px;
    background: #f6f6f6;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-arrow {
    display: inline-block;
    position: absolute;
    top: 17px;
    right: 10px;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #e9e9e9;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-arrow.asc {
    border-top: none;
    border-bottom: 6px solid #0db0c1;
}

.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-arrow.desc {
    border-top: 6px solid #0db0c1;
    border-bottom: none;
}

.tabulator .tabulator-header .tabulator-col .tabulator-handle {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 5px;
}

.tabulator .tabulator-header .tabulator-col .tabulator-handle.prev {
    left: 0;
    right: auto;
}

.tabulator .tabulator-header .tabulator-col .tabulator-handle:hover {
    cursor: ew-resize;
}

.tabulator .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols {
    position: relative;
    display: flex;
    border-top: 1px solid rgb(43, 109, 159);
    overflow: hidden;
}

.tabulator .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols .tabulator-col:last-child {
    margin-right: -1px;
}

.tabulator .tabulator-header .tabulator-col:first-child .tabulator-handle.prev {
    display: none;
}

.tabulator .tabulator-header .tabulator-col.ui-sortable-helper {
    position: absolute;
    background-color: #e6e6e6 !important;
    border: 1px solid rgb(43, 109, 159);
}

.tabulator .tabulator-header .tabulator-col .tabulator-header-filter {
    position: relative;
    box-sizing: border-box;
    margin-top: 2px;
    width: 100%;
    text-align: center;
}

.tabulator .tabulator-header .tabulator-col .tabulator-header-filter textarea {
    height: auto !important;
}

.tabulator .tabulator-header .tabulator-col .tabulator-header-filter svg {
    margin-top: 3px;
}

.tabulator .tabulator-header .tabulator-col[data-sortable=true] .tabulator-col-title {
    width: calc(100% - 25px);
}

.tabulator .tabulator-header .tabulator-col[data-sortable=true]:hover {
    cursor: pointer;
    background-color: rgb(43, 109, 159);
}

.tabulator .tabulator-header .tabulator-col-row-handle {
    width: 30px;
    max-width: 30px;
    display: inline-block;
}

.tabulator .tabulator-header .tabulator-col,
.tabulator .tabulator-header .tabulator-col-row-handle {
    position: relative;
    box-sizing: border-box;
    border-right: 1px solid rgb(43, 109, 159);
    text-align: left;
    vertical-align: bottom;
    overflow: hidden;
}

.tabulator .tabulator-tableHolder {
    position: relative;
    width: 100%;
    white-space: nowrap;
    overflow-x: hidden;
    overflow-y: auto;
    -ms-overflow-x: hidden;
    -ms-overflow-y: auto;
}

.tabulator .tabulator-tableHolder .tabulator-table {
    position: relative;
    display: inline-block;
    background-color: #fff;
    white-space: nowrap;
    overflow: visible;
    color: #657b83;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row {
    min-height: 22px;
    background-color: #e9e9e9;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row:nth-child(even) {
    background-color: #f6f6f6;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.selectable:hover {
    background-color: rgba(43, 109, 159, 0.3);
    cursor: pointer;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-row-moving {
    border: 1px solid #000;
    background: #fff;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-row-handle {
    display: inline-block;
    box-sizing: border-box;
    width: 30px;
    max-width: 30px;
    padding: 4px;
    border-right: 1px solid rgba(50, 50, 80, 0.25);
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-row-handle:hover {
    cursor: move;
    background-color: rgba(0, 0, 0, 0.1);
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-row-handle div {
    width: 80%;
    height: 3px;
    margin: 2px 10% 0 10%;
    background: #666;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-cell {
    position: relative;
    box-sizing: border-box;
    padding: 4px;
    border-right: 1px solid rgb(43, 109, 159);
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-cell.tabulator-editing {
    border: 1px solid rgb(43, 109, 159);
    padding: 0;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-cell.tabulator-editing input,
.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row .tabulator-cell.tabulator-editing select {
    border: 1px;
    background: transparent;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group.show .tabulator-group-header .tabulator-arrow {
    margin-left: 5px;
    margin-right: 10px;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #0db0c1;
    border-bottom: 0;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group.show .tabulator-group-body {
    visibility: visible;
    height: auto;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group .tabulator-group-header {
    box-sizing: border-box;
    border-bottom: 1px solid rgba(50, 50, 80, 0.25);
    border-right: 1px solid rgba(50, 50, 80, 0.25);
    border-top: 1px solid rgba(50, 50, 80, 0.25);
    padding: 5px;
    background: rgb(41, 128, 185);
    font-weight: bold;
    color: #f6f6f6;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group .tabulator-group-header .tabulator-arrow {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 8px;
    margin-right: 13px;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-right: 0;
    border-left: 6px solid #e9e9e9;
    vertical-align: middle;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group .tabulator-group-header .tabulator-arrow:hover {
    cursor: pointer;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group .tabulator-group-header span {
    margin-left: 10px;
    color: #2dda76;
}

.tabulator .tabulator-tableHolder .tabulator-table .tabulator-group .tabulator-group-body {
    visibility: hidden;
    height: 0;
}

.tabulator .tabulator-footer {
    padding: 5px 10px;
    border-top: 1px solid rgb(43, 109, 159);
    background-color: #2980b9;
    text-align: center;
    color: #f6f6f6;
    font-weight: bold;
    white-space: nowrap;
    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
}

.tabulator .tabulator-footer .tabulator-pages {
    margin: 0 7px;
}

.tabulator .tabulator-footer .tabulator-page {
    display: inline-block;
    margin: 0 2px;
    border: 1px solid #f6f6f6;
    border-radius: 3px;
    padding: 2px 5px;
    background: #f6f6f6;
    color: #657b83;
}

.tabulator .tabulator-footer .tabulator-page.active {
    color: #ea6153;
}

.tabulator .tabulator-footer .tabulator-page.disabled {
    opacity: .5;
}

.tabulator .tabulator-footer .tabulator-page:not(.disabled):hover {
    cursor: pointer;
    background: #2980b9;
    color: #f6f6f6;
}

.tabulator .tabulator-loader {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.4);
    text-align: center;
}

.tabulator .tabulator-loader .tabulator-loader-msg .tabulator-loading {
    display: inline-block;
    border: 4px solid #2980b9;
    border-radius: 10px;
    padding: 10px 20px;
    background: #f6f6f6;
    font-weight: bold;
    font-size: 16px;
    color: #2980b9;
}

.tabulator .tabulator-loader .tabulator-loader-msg .tabulator-error {
    display: inline-block;
    border: 4px solid #ea6153;
    border-radius: 10px;
    padding: 10px 20px;
    background: #f6f6f6;
    font-weight: bold;
    font-size: 16px;
    color: #ea6153;
}
