html,
body {
    height: 100%;
}

body {
    font-family: "Avenir", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Logo */
.navbar-brand {
    background-image: url(/assets/logo.svg);
    width: 40px;
    height: 40px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 52px;
    height: 26px;
    float:right;
}

/* Hide default HTML checkbox */
.switch input {
    display: none;
}

/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input.default:checked + .slider {
    background-color: #444;
}
input.primary:checked + .slider {
    background-color: #2196F3;
}
input.success:checked + .slider {
    background-color: #8bc34a;
}
input.info:checked + .slider {
    background-color: #3de0f5;
}
input.warning:checked + .slider {
    background-color: #FFC107;
}
input.danger:checked + .slider {
    background-color: #f44336;
}

input:focus + .slider {
    box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

/* Btn with icon */
.btn-icon > span {
    display: inline-block;
    vertical-align: middle;
}

/* Text */
.text-gray {
    color: #818182;
}

.text-dark {
    color: #444;
}

.text-transparent {
    opacity: 0.8;
}

.text-numeric {
    font-family: 'Roboto Mono', monospace;
    letter-spacing: -0.8px;
    font-size: 14px;
}

/* Lists with no bottom padding */
.list-group.list-group-no-bottom > li.list-group-item {
    padding-bottom: 0;
    border-style: dashed;
}

li.list-group-item.disabled {
    pointer-events: none;
}

li.list-group-item.disabled span {
    opacity: 0.5;
}

.list-group-flush .list-group-item:last-child {
    border-bottom: 0;
}

.list-group.list-group-striped .list-group-item:nth-child(2n) {
    background-color: #f8f9fa;
}

/* Circles */
i.circle {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: white;
    cursor: pointer;
}

i.rounded {
    display: inline-block;
    width: 12px;
    height: 12px;
    cursor: pointer;
}

i.circle.circle-primary {
    background-color: #0062cc;
}

i.circle.circle-info {
    background-color: #2196F3;
}

i.circle.circle-danger {
    background-color: #dc3545;
}

i.circle.circle-light {
    box-shadow: 0 0 2px black;
}

/* Tables */
.table.table-sm td, .table-sm th {
    padding: 0.4rem;
}

table > tbody > tr.row-align-middle > td {
    vertical-align: middle;
}

table > tbody > tr > td.align-middle > * {
    display: inline-block;
    vertical-align: middle;
}

.table > tbody > tr.row-space {
    background-color: white;
}

.table > tbody > tr.row-fade {
    opacity: 0.2;
    transition: 0.4s opacity;
}

.table > tbody > tr.row-fade:hover {
    opacity: 1;
}

.table > tbody > tr.row-border > td {
    border-bottom: 2px solid #dee2e6;
}

.table > tbody > tr > th[scope=row] {
    border-right: 1px solid #dde2e6;
    box-shadow: inset -2px 0 #00000008;
}

table.table > thead > tr > th.col-thin,
table.table > tbody > tr > td.col-thin {
    padding-left: 0;
    padding-right: 0;
}

table.table > tbody > tr.disabled,
table.table > tbody > tr[disabled] {
    opacity: 0.4;
    pointer-events: none;
}

table.table > tbody > tr.row-template {
    display: none;
}

table.table tr.row-no-items {
    display: none;
}

table.table.table-no-items tr.row-no-items {
    display: table-row;
}

table.table tr:not(:hover) .row-hover-visible {
    opacity: 0;
    pointer-events: none;
}

table.table > tbody > tr.row-no-border > td {
    border-top: none;
}

.modal .modal-table-container {
    overflow-x: auto;
}

/* Modals */
.modal-alerts {
    position: relative;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    padding: 0 1rem;
}

/* Margins */
.ml-2-children > *:not(:first-child) {
    margin-left: .5rem !important;
}

/* Dividers */
.divider-h {
    display: inline-block;
    border-right: 1px solid gray;
    height: 16px;
}

.dropdown-divider.dropdown-divider-dashed {
    border-top: 1px dashed #e6ecef;
}

/* Notifications */
.notifications {
    position: fixed;
    width: 25%;
    right: 0;
    top: 56px;
    z-index: 1100;
}
.notifications.notifications-thin {
    width: 16.666667%;
}

.notification-alerts {
    pointer-events: none;
    padding: 15px;
}

.notification-alerts > .alert {
    pointer-events: all;
}

/* Navbar */
.navbar-light .navbar-toggler {
    outline: none;
    border: 0;
}

.navbar-light .navbar-toggler:not(.collapsed) {
    background-color: #e9ecef;
}

/* Card */
table.card-header-split {
    width: 100%;
}

table.card-header-split > tbody > tr > td:last-child {
    text-align: right;
}

.card.card-full-height {
    height: 100%;
}
.card.card-full-height .card-header {
    height: 58px;
}
.card.card-full-height .card-body {
    height: calc(100% - 58px);
}

/* Tree view */
ul.tree-view i {
    color: #495057;
}

ul.tree-view li+li {
    padding-top: .25rem;
}

ul.tree-view, ul.tree-view ul {
    padding-left: 16px;
}

ul.tree-view ul > li, ul.tree-view > li {
    padding-left: 4px;
    padding-right: 24px;
    word-break: break-word;
}

ul.tree-view ul > li.tree-node-expanded, ul.tree-view > li.tree-node-expanded {
    padding-right: 0;
}

ul.tree-view li > i.tree-item-drag {
    display: none;
    position: absolute;
    width: 24px;
    height: 24px;
    top: 0;
    right: 0;
    cursor: grab;
    opacity: 0.5;
    padding-top: 4px;
    margin-right: 0;
}

ul.tree-view li:hover > i.tree-item-drag {
    display: block;
}

ul.tree-view li > i.tree-item-drag:hover {
    opacity: 1;
}

ul.tree-view li.tree-node-expanded > i.tree-item-drag,
ul.tree-view[data-sortable-disabled] > li > i.tree-item-drag,
ul.tree-view ul[data-sortable-disabled] > li > i.tree-item-drag {
    display: none;
}

ul.tree-view span+ul {
    margin-top: .5rem;
    cursor: initial;
}

ul.tree-view li {
    cursor: initial;
    list-style: none;
    position: relative;
}

ul.tree-view li > i {
    width: 16px;
    text-align: center;
    margin-right: 8px;
}

ul.tree-view li.tree-node {
    cursor: pointer;
}
ul.tree-view li.tree-node .tree-node-icon{
    color: #495057;
    display: inline-block;
    font-size: 16px;
    margin: 0 5px 0 3px;
}
ul.tree-view li.tree-node .tree-node-icon:before{
    content: "\f105";
}

ul.tree-view li.tree-node.tree-node-expanded > .tree-node-item-container > .tree-node-icon:before{
    content: "\f107";
}

ul.tree-view li.tree-node > .tree-node-item-container{
    display: inline-block;
}

ul.tree-view li.tree-node:not(.tree-node-expanded):not(:hover) > .tree-node-item-container > i.fa-folder-open {
    display: none;
}
ul.tree-view li.tree-node:not(.tree-node-expanded):hover > .tree-node-item-container > i.fa-folder {
    display: none;
}

ul.tree-view li.tree-node.tree-node-expanded > .tree-node-item-container > i.fa-folder {
    display: none;
}

ul.tree-view li.tree-node > ul {
    display: none;
    border-left: 1px solid #eaecef;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-left: 8px;
}
ul.tree-view li.tree-node > span {
    margin-left: -24px;
    padding-left: 24px;
}
ul.tree-view li.tree-node.tree-node-expanded > ul {
    display: block;
}

ul.tree-view a, ul.tree-view span {
    color: #495057;
}

ul.tree-view a:hover {
    color: #0062cc;
}

ul.tree-view li.active > a,
ul.tree-view li.active > span {
    font-weight: bold;
}

.tree-node.tree-node-sortable {
    height: 28px;
    background-color: #f8f9fa;
}

.markdown-info {
    color: rgba(0, 0, 0, 0.5);
    padding-left: 15px;
    margin-bottom: 2rem;
}

/* Others */
.nowrap {
    white-space: nowrap;
}

var {
    font-style: normal;
}

.full-height {
    height: calc(100vh - 40px - 5rem);
    overflow-y: auto;
}

select.form-control + .select2 {
    display: block;
}

select.select-groups + .select2-container {
    min-width: 120px;
    max-width: 230px;
}

select.select-groups.select-groups-directory {
    max-width: 140px;
}

table.table.table-permissions > tbody > tr:nth-child(2) > td,
table.table.table-permissions > tbody > tr:nth-child(3) > td {
    border-top: 0;
}

.dropdown-menu {
    z-index: 1110;
}

/* Custom checkboxes */
.custom-control-input:checked ~ .custom-control-label.custom-control-label-warning::before {
    background-color: #ffc107;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label.custom-control-label-warning::before {
    background-color: #ffc107;
}

.custom-control-input:focus ~ .custom-control-label.custom-control-label-warning::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(255, 193, 7, 0.25);
}

.custom-control-input:checked ~ .custom-control-label.custom-control-label-success::before {
    background-color: #28a745;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label.custom-control-label-success::before {
    background-color: #28a745;
}

.custom-control-input:focus ~ .custom-control-label.custom-control-label-success::before {
    box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

/* Link */
.link {
    cursor: pointer;
    color: #007bff;
    text-decoration: none;
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

.link:hover {
    color: #0056b3;
    text-decoration: underline;
}

/* Breadcrumbs */
.breadcrumb {
    position: relative;
}

.breadcrumb .btn-create-node {
    position: absolute;
    right: 0;
    top: 0;
    margin-top: 9px;
}

.breadcrumb:not(.breadcrumb-show-hidden) .breadcrumb-item.hidden,
.breadcrumb.breadcrumb-show-hidden .breadcrumb-item.hidden-cover {
    display: none;
}

.word-break-word {
    word-break: break-word;
}

.rotating {
    animation: rotating 2s linear infinite;
}

@keyframes rotating {
    from { transform: rotate(0deg) }
    to { transform: rotate(360deg) }
}

button:not([disabled]) > .octicon.rotating {
    display: none;
}

.text-break {
    word-break: break-word;
    overflow-wrap: break-word;
}

.stats-table-day-wrapper {
    position: relative;
    width: 150px;
}
