﻿
@import url('https://fonts.googleapis.com/css2?family=Ubuntu:wght@300&display=swap');

* {
    font-family: 'Ubuntu', sans-serif;
}


:root {
    /*Generic Colors*/
    --grey: rgb(128 128 128);
    --red: rgb(229 30 30 / 0.75);
    --background: #1e1e1e;
    --foreground: #2e2e2e;
    --foregroundTransparent: rgb(46 46 46 / 0.93);
    --foregroundElementA: rgb(35 35 35);
    --foregroundElementB: #454545;
    --foregroundElementC: #4f4f4f;
    --foregroundElementD: #797777;
    --foregroundElementE: rgb(47 47 47);
    --foregroundShadowA: rgb(182 182 182 / 0.20);
    /*Generic Colors*/
    /*Text*/
    --hint-text: #cacaca;
    --main-text: #ffffff;
    --main-text-transparent: rgb(255 255 255 / 0.81);
    /*Text*/
    /*Devloop*/
    --devloopColor1: #f1562a;
    --devloopColor2: #fe03f6;
    /*Devloop*/
    /*Table Colors*/
    /*Table Colors*/
    --warningColor: rgb(232 203 64 / 0.66);
    --warningColorHover: rgb(232 203 64 / 0.85);
    --warningColorHoverBackground: rgb(232 203 64 / 0.5);
    --OKColor: rgb(76 232 64 / 0.66);
    --OKColorHover: rgb(76 232 64 / 0.85);
    --OKColorHoverBackground: rgb(76 232 64 / 0.5);
    --criticalColor: rgb(232 64 64 / 0.66);
    --criticalColorHover: rgb(232 64 64 / 0.85);
    --criticalColorHoverBackground: rgb(232 64 64 / 0.5);
    /*Table Colors*/
}

body {
    padding: 0px !important;
    margin: 0;
    padding: 0;
    background: var(--background);
}

p {
    color: var(--main-text);
}


a:focus {
    outline: none !important;
    color: var(--main-text);
}

/*Loading animation*/

.LoadingContainer {
    margin: 0;
    padding: 0;
    background: none;
    height: 100px;
    width: inherit;
    padding: 0;
    margin-left: auto !important;
    text-align: center;
    padding-top: 50px !important;
    padding-bottom: 85px !important;
    overflow: hidden;
    position: relative;
}

.Loading {
    display: flex;
    height: 35px !important;
    align-items: center !important;
    top: 50%;
    left: 50%;
    margin: -25px 0 0 -25px;
    position: absolute;
}

.loadingBar {
    top: 50%;
    bottom: 50%;
    margin-left: 1px;
    display: inline-flex;
    height: 0px;
    border-radius: 10px;
    width: 5px;
    background: linear-gradient(0deg, var(--devloopColor1), var(--devloopColor2) );
    animation: loading 1s infinite;
}

    .loadingBar:nth-child(2) {
        animation-delay: 0.5s;
    }

    .loadingBar:nth-child(3) {
        animation-delay: 0.7s;
    }

    .loadingBar:nth-child(4) {
        animation-delay: 0.3s;
    }

    .loadingBar:nth-child(5) {
        animation-delay: 1s;
    }

    .loadingBar:nth-child(6) {
        animation-delay: 0.4s;
    }

    .loadingBar:nth-child(7) {
        animation-delay: 0.1s;
    }

    .loadingBar:nth-child(8) {
        animation-delay: 0.2s;
    }

    .loadingBar:nth-child(9) {
        animation-delay: 0.9s;
    }


@keyframes loading {
    0% {
        height: 5px;
    }

    50% {
        height: 35px;
    }

    100% {
        height: 5px;
    }
}

/*Loading animation*/

/*Table 1*/

.FancyTableContainer {
    width: 100%;
    height: auto;
}


.FancyTable {
    width: 98% !important;
    margin-bottom: 50px;
    margin: auto;
    color: var(--main-text);
    border-radius: 4px 35px 4px 35px;
    overflow: hidden;
    box-shadow: 3px 3px 4px var(--foregroundShadowA) !important;
    margin-top: 25px;
}

    .FancyTable thead tr {
        background-color: var(--foregroundElementD) !important;
    }

    .FancyTable.SlideOut {
    }

        .FancyTable.SlideOut tr:hover {
            background-color: var(--foregroundElementC) !important;
        }

        .FancyTable.SlideOut tr:nth-child(4n) {
            background-color: var(--foregroundElementE);
        }

        .FancyTable.SlideOut tr:nth-child(4n-1) {
            background-color: var(--foregroundElementE);
        }

        .FancyTable.SlideOut tr:nth-child(4n-2) {
            background-color: var(--foregroundElementB);
        }

        .FancyTable.SlideOut tr:nth-child(4n-3) {
            background-color: var(--foregroundElementB);
        }

    .FancyTable tr {
    }

        .FancyTable tr.SlideOut {
            transition: 0.2s ease-in-out;
            height: 0 !important;
            opacity: 0;
            visibility: collapse;
            font-size: 0;
            margin: 0;
        }

            .FancyTable tr.SlideOut.Visible {
                visibility: visible;
                height: auto;
                opacity: 1;
                font-size: inherit;
                margin: inherit;
                line-height: inherit;
            }

        .FancyTable tr:hover {
            transition: 0.1s linear !important;
            background-color: var(--foregroundElementD) !important;
            cursor: pointer;
        }

        .FancyTable tr.Warning {
            background-color: var(--warningColorHoverBackground) !important;
        }

            .FancyTable tr.Warning:hover {
                background-color: var(--warningColorHover) !important;
            }

        .FancyTable tr.Error {
            background-color: var(--criticalColorHoverBackground) !important;
        }

            .FancyTable tr.Error:hover {
                background-color: var(--criticalColorHover) !important;
            }

        .FancyTable tr:nth-child(odd) {
            background-color: var(--foregroundElementC);
        }

        .FancyTable tr:nth-child(even) {
            background-color: var(--foregroundElementB);
        }




    .FancyTable th {
        text-align: center !important;
        width: auto;
        padding: 10px 10px 5px 10px;
        text-transform: uppercase;
    }

    .FancyTable td {
        text-align: center !important;
        width: auto;
        padding: 10px 5px 5px 10px;
    }

    .FancyTable p {
        width: auto;
    }



    .FancyTable td i {
        transition: 0.05s linear !important;
    }

        .FancyTable td i:hover {
            transform: scale(1.3);
            color: var(--main-text-transparent);
            cursor: pointer;
        }

.OK {
    height: 100% !important;
    background-color: var(--OKColor);
    border-radius: 5px;
}

.Warning {
    height: 100% !important;
    background-color: var(--warningColor);
    border-radius: 5px;
}

.Critical {
    height: 100% !important;
    background-color: var(--criticalColor);
    border-radius: 5px;
}

.FancyTableExpandedRow {
    border-top: 1px solid var(--foregroundElementD);
    padding-top: 4px;
}

.FancyTableIcon {
    transition: 0.1s ease-in-out;
}

    .FancyTableIcon.Rotate {
        transform: rotate(90deg);
    }

.FancyTableAlignLeft {
    text-align: left;
}



/*Table 1*/

/*PageHeader*/
.Title {
    word-break: break-all;
    color: var(--main-text);
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 20px;
    font-weight: 700;
}

    .Title.Centered {
        text-align: center;
    }

    .Title.Inline {
        display: inline-block;
    }

    .Title.Lite {
        font-size: 20px;
        font-weight: 100;
    }

    .Title.Large {
        font-size: 30px;
    }

    .Title.XLarge {
        font-size: 45px;
    }


.PageHeaderLayerContainer {
    border-color: var(--OKColor);
    border-style: solid;
    border-radius: 25px;
    padding-top: 15px;
    padding-bottom: 10px;
    margin-bottom: 25px;
    margin-left: 20px;
    margin-right: 20px;
    transition: 0.1s;
}


    .PageHeaderLayerContainer:hover {
        background-color: var(--OKColorHoverBackground);
    }


    .PageHeaderLayerContainer.Warning {
        border-color: var(--warningColor);
    }

        .PageHeaderLayerContainer.Warning:hover {
            background-color: var(--warningColorHoverBackground) !important;
        }

    .PageHeaderLayerContainer.Critical {
        border-color: var(--criticalColor);
    }

        .PageHeaderLayerContainer.Critical:hover {
            background-color: var(--criticalColorHoverBackground) !important;
        }

    .PageHeaderLayerContainer:hover .PageHeaderIcon {
        animation: rotate 0.7s ease-in-out;
    }

    .PageHeaderLayerContainer.Clickable {
        cursor:pointer;
    }

@keyframes rotate {

    100% {
        transform: rotate(720deg);
    }
}


.PageHeaderLayer {
    text-align: center;
    margin-bottom: 0px;
}


.PageHeaderIcon {
    color: white;
    font-size: 45px;
}


/*PageHeader*/


/*Navbar container*/


.FloatingNavBarContainer {
    width: 99%;
    transform: translate(0%,15px);
    border-radius: 5px;
    height: 92% !important;
    position: fixed;
    z-index: 1;
    right: -100% !important;
    background-color: none;
    transition: 0.5s;
    margin-left: 0.5%;
    margin-right: 0.5%;
    backdrop-filter: blur(4px);
    opacity: 0;
}

    .FloatingNavBarContainer.active {
        opacity: 1;
        right: 0 !important;
        background-color: var(--foregroundTransparent);
    }

.FloatingNavBar {
    transform: translate(0.5%,20%);
    width: 99%;
    height: 55px;
    background-color: var(--foreground);
    padding: 10px;
    border-radius: 7px;
    z-index: 100;
}

.FloatingNavBarIcon {
    text-anchor: middle !important;
    font-size: 34px;
    color: var(--main-text);
    transition: 0.1s;
    transform: scale(1);
}

    .FloatingNavBarIcon:hover {
        transform: scale(1.2);
        color: rgb(199 199 199 / 0.69);
        cursor: pointer;
    }

    .FloatingNavBarIcon.disabled {
        cursor: not-allowed;
        color: var(--hint-text) !important;
    }

        .FloatingNavBarIcon.disabled:hover {
            transform: scale(1) !important;
        }


.FloatingNavBarLeft {
    margin-left: 2%;
    display: inline-block;
    align-content: start;
    float: left;
}

.FloatingNavBarCenter {
    position: absolute;
    padding-top: 10px;
    left: 50%;
    top: 50%;
    margin: -25px 0 0 -71px;
}

.FloatingNavBarRight {
    margin-right: 2%;
    display: inline-block;
    display: inline-block;
    float: right;
}

.FloatingNavBarItems {
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.6s;
    display: grid;
}



.FloatingNavBarItem {
    margin: 20px;
    overflow: hidden;
    color: white;
    font-size: 45px;
    font-weight: 700;
    position: relative;
}

    .FloatingNavBarItem::before {
        content: "";
        position: absolute;
        width: 0%;
        height: 10px;
        border-radius: 10px;
        background: linear-gradient(90deg, var(--devloopColor1), var(--devloopColor2) );
        left: 0;
        bottom: 0;
        z-index: -1;
        transform: translate(0px,-5px);
        transition: 0.2s;
    }

    .FloatingNavBarItem:hover {
        color: white;
        text-decoration: none;
    }

        .FloatingNavBarItem:hover::before {
            width: 100%;
        }

/*Navbar container*/
/*Dashboard*/

.Pie {
    text-align: center !important;
    margin: 25px;
}

.BigBox {
    width: auto;
    height: auto;
    background-color: var(--foreground);
    border-radius: 25px;
    border-color: var(--main-text);
    border-style: solid;
    border-width: 1px;
    min-height: 90px;
}

.BigBoxNavElement {
    color: var(--main-text);
    position: relative;
    float: left;
    font-size: 30px;
    /* padding-left: 25px;*/
    padding-bottom: 20px;
    /*padding-top: 10px;*/
    transition: 0.1s;
    cursor: pointer;
    text-align: center;
    text-anchor: middle;
    width: 75px;
    height: 75px;
}

    .BigBoxNavElement.Right {
        float: right;
        cursor: pointer;
        text-align: center;
        align-content: center;
        text-anchor: middle;
    }

    .BigBoxNavElement:hover {
        font-size: 34px;
        transform: scale(1.1);
        opacity: 0.7;
    }


.PieTitle {
    color: var(--main-text) !important;
    text-align: center !important;
    margin-top: 25px;
    margin-bottom: 25px;
    font-weight: bold !important;
    font-size: 20px !important;
}

.PieCenterText {
    color: var(--main-text) !important;
    position: absolute;
    font-weight: bold !important;
    font-size: 40px !important;
    display: block;
    transform: translate(-5%,100%);
    width: 100%;
    text-align: center;
}

/*Dashboard*/

/*Pagination*/

.PaginateFilter {
}

    .PaginateFilter label {
        color: var(--main-text);
        margin-left: 25px !important;
        display: inline-block;
    }

    .PaginateFilter input {
        display: inline-block;
        margin-left: 10px !important;
        text-align: center;
        width: 50%;
        border: 2px solid var(--grey);
        height: 30px;
        outline: none;
        border-radius: 10px;
        background: none;
        color: white !important;
        transition: 0.1s;
    }

        .PaginateFilter input:focus {
            border: 2px solid var(--red);
            width: 75% !important;
        }

        .PaginateFilter input:hover {
            border: 2px solid var(--red);
        }

.PaginateContainer {
    margin-top: 15px;
    width: 100%;
    margin-left: 25px;
}

    .PaginateContainer a {
        margin-left: 2px;
        margin-right: 2px;
    }

        .PaginateContainer a:hover {
            color: var(--main-text);
            text-decoration: none;
        }


    .PaginateContainer .paginate_button {
        color: white;
        /*margin: 20px auto;*/
        background: none;
        background-color: var(--foregroundElementA);
        border-radius: 10px;
        border: none;
        padding: 5px;
        text-align: center;
        border: 2px solid var(--foregroundElementA);
        width: 75px;
        height: 33px;
        display: inline-block;
        transition: 0.2s;
    }

    .PaginateContainer span a {
        width: 40px !important;
    }

        .PaginateContainer span a:hover:not(.current) {
            /*width: 50px !important;*/
        }

    .PaginateContainer .paginate_button:hover:not(.disabled):not(.current) {
        border: 2px solid var(--red);
        /*width: 100px;*/
        /*height: 36px;*/
        font-weight: 900;
    }

    .PaginateContainer .paginate_button:focus {
        outline: 0 !important;
    }

    .PaginateContainer .current {
        border-color: var(--red);
    }


    .PaginateContainer .disabled {
        color: var(--hint-text) !important;
    }

/*Pagination*/
/*Forms*/
.FormsBox {
    width: 25%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    background: var(--foreground);
    border-radius: 15px;
}

.ToggleCheckBoxLabel {
    display: block;
    position: relative;
    padding-top: 6px;
    padding-bottom: 6px;
    color: var(--hint-text);
    font-size: 16px;
}

.ToggleCheckBoxLabelInline {
    display: inline-block;
    position: relative;
    padding-right: 3px;
    color: var(--hint-text);
    font-size: 14px;
    vertical-align: middle;
    transform: translate(0px,5px)
}

.ToggleCheckBox {
    transition: 0.2s;
    align-content: center;
    vertical-align: middle;
    overflow: hidden;
    width: 65px;
    height: 30px;
    position: relative;
    -webkit-appearance: none;
    background: none;
    background-color: rgb(0 0 0 / 0.00);
    border: 2px solid var(--grey);
    border-radius: 20px;
    cursor: pointer;
    outline: none;
}

    .ToggleCheckBox::placeholder {
        color: red;
        font-size: 200px;
    }

    .ToggleCheckBox:checked::before {
        background-color: var(--red);
        /*left: 35px;*/
        transform: translate(35px,0px);
    }

    .ToggleCheckBox::before {
        background-color: var(--grey);
        width: 26px;
        height: 26px;
        border-radius: 20px;
        position: absolute;
        transition: 0.1s;
        content: '';
    }

    .ToggleCheckBox:hover::before {
        background-color: var(--red);
    }

    .ToggleCheckBox:hover {
        border: 2px solid var(--red);
    }

    .ToggleCheckBox:focus {
        outline: 0 !important;
    }


.TransparentFormsDropDown {
    background: none;
    border-radius: 9px;
    color: var(--main-text);
    height: 30px;
    transition: 0.1s;
    outline: none;
    display: block;
    width: 45%;
    min-width: 100px;
}


    .TransparentFormsDropDown:hover {
        border-color: var(--red);
    }

    .TransparentFormsDropDown option {
        color: var(--main-text) !important;
        background-color: var(--foregroundElementA) !important;
        transition: 0.1s;
    }

        .TransparentFormsDropDown option.selected {
            color: var(--main-text) !important;
            background-color: var(--foregroundElementD) !important;
        }

    .TransparentFormsDropDown.Medium {
        width: 200px;
    }

.TransparentFormsTextBox {
    resize: none;
    white-space: nowrap;
    overflow: hidden !important;
    overflow: auto;
    display: block;
    text-align: center;
    width: 45%;
    border: 2px solid var(--grey);
    height: 30px;
    outline: none;
    border-radius: 10px;
    background: none;
    color: white !important;
    transition: 0.2s;
    min-width: 100px;
}

    .TransparentFormsTextBox.TextCenter {
        text-align: center !important;
    }

    .TransparentFormsTextBox.WrapWords {
        white-space: pre-wrap;
        overflow-wrap: break-word;
    }

    .TransparentFormsTextBox.Center {
        margin: 20px auto;
    }

    .TransparentFormsTextBox::placeholder {
        color: var(--grey) !important;
    }

    .TransparentFormsTextBox:focus {
        border: 2px solid var(--red);
        width: 55% !important;
    }

    .TransparentFormsTextBox:hover {
        border: 2px solid var(--red);
    }

    .TransparentFormsTextBox.Medium {
        text-align: left;
        width: 200px;
    }

        .TransparentFormsTextBox.Medium:focus {
            width: 220px !important;
        }

        .TransparentFormsTextBox.Medium:hover {
            border: 2px solid var(--red);
        }

    .TransparentFormsTextBox.Large {
        text-align: left;
        width: 250px;
    }

        .TransparentFormsTextBox.Large:focus {
            width: 270px !important;
        }

        .TransparentFormsTextBox.Large:hover {
            border: 2px solid var(--red);
        }

    .TransparentFormsTextBox.MultiLine {
        margin-top: 4px;
        margin-bottom: 4px;
        text-align: left;
        height: 100px;
    }

        .TransparentFormsTextBox.MultiLine:focus {
            height: 110px !important;
        }

        .TransparentFormsTextBox.MultiLine:hover {
            border: 2px solid var(--red);
        }

.TransparentFormsButtonWithIcon {
    color: white;
    background: none;
    border: none;
    font-size: 34px;
    cursor: pointer;
    transition: 0.1s linear;
}

    .TransparentFormsButtonWithIcon:hover {
        transform: scale(1.2);
    }

.TransparentFormsButtonLarge {
    color: white;
    margin: 20px auto;
    background: none;
    background-color: var(--foregroundElementA);
    border-radius: 10px;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: center;
    border: 2px solid var(--foregroundElementA);
    width: 125px !important;
    height: 33px !important;
    display: inline-block;
    transition: 0.2s;
}

    .TransparentFormsButtonLarge.Center {
        position: relative;
        margin-left: 50%;
    }

    .TransparentFormsButtonLarge:hover {
        border: 2px solid var(--red);
        width: 150px !important;
        font-weight: 900;
    }

.TransparentFormsButtonSmall {
    color: white;
    margin: 20px auto;
    background: none;
    background-color: var(--foregroundElementA);
    border-radius: 10px;
    border: none;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: center;
    border: 2px solid var(--foregroundElementA);
    width: 75px !important;
    height: 33px !important;
    display: inline-block;
    transition: 0.2s;
}

    .TransparentFormsButtonSmall:hover {
        border: 2px solid var(--red);
        width: 100px !important;
        /*height: 36px !important;*/
        font-weight: 900;
    }

.TransparentFormsButtonTiny {
    color: white;
    margin: 20px auto;
    background: none;
    background-color: var(--foregroundElementA);
    border-radius: 10px;
    border: none;
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: center;
    display: inline-block !important;
    border: 2px solid var(--foregroundElementA);
    width: 40px !important;
    height: 33px !important;
    transition: 0.2s;
}

    .TransparentFormsButtonTiny:hover {
        border: 2px solid var(--red);
        width: 50px !important;
        /*height: 30px !important;*/
        font-weight: 900;
    }


.TitleDark {
    color: var(--main-text);
    text-align: center;
    padding-top: 10px;
}

.TransparentCheckbox {
    padding-right: 100%;
    display: block;
}

.FloatingText {
    padding-top: 10px;
    color: var(--main-text);
    font-size: 15px;
}

    .FloatingText.Danger {
        color: #ea6969 !important;
    }

.FormValidation {
    color: var(--main-text);
}

.FormsGroup {
    margin: auto;
    display: block;
}

.FormLine {
    display: flex;
    min-height: 70px;
    width: auto;
}

    .FormLine.DrawLine {
        border-top: 1px solid var(--foregroundElementB);
    }

    .FormLine.Centered {
        margin: auto;
        margin-left: 20%;
        margin-right: 20%;
    }

.FormLineItem {
    height: 100%;
    width: 35%;
    margin-top: auto;
    margin-bottom: auto;
    margin-right: auto;
}

    .FormLineItem.Centered {
        width: 100%;
    }
/*Forms*/
/*Modal*/

.ModalContainer {
    position: relative;
    transition: 3s linear;
}

.ModalMain {
    border-color: var(--main-text);
    border-style: solid;
    border-width: 1px;
    position: fixed;
    top: 15%;
    bottom: 15%;
    left: 15%;
    right: 15%;
    background-color: var(--foregroundElementA);
    border-radius: 25px;
    overflow: hidden;
    transition: 0.2s ease-in-out;
}

    .ModalMain.Hidden {
        /*transition: 3s linear all;*/
        opacity: 0;
        width: 0px;
        height: 0px;
    }

    .ModalMain.Visible {
        /*transition: 3s linear all;*/
        width: 75%;
        height: 75%;
        opacity: 1;
    }

/*Modal*/

/*Misc*/
.RotateInfinite {
    animation: infiniteRotate 12s linear infinite;
}

@keyframes infiniteRotate {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.Hidden {
    display: none !important;
}

/*Misc*/



body {
    padding-top: 50px;
    padding-bottom: 20px;
}
/* Set padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
}
/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}
/* Set width on the form input elements since they're 100% wide by default */
input, select, textarea {
    max-width: 280px;
}
