:root {
    --color-primary-12: #f7f7ff;
    --color-neutrals-900: #212121;
    --color-neutrals-800: #424242;
    --color-neutrals-700: #616161;
    --color-neutrals-600: #757575;
    --color-neutrals-500: #9e9e9e;
    --color-neutrals-400: #bdbdbd;
    --color-neutrals-300: #e0e0e0;
    --color-neutrals-200: #eee;
    --color-neutrals-100: #f5f5f5;
    /*this is button color*/
    /*--color-primary-800: #4F9EDA;*/
    --color-primary-800: #4297d7;
    --color-primary-700: #378BCA;
    --color-primary-600: #2C7FBD;
    --color-primary-500: #2976B0;
    --color-primary-400: #266DA3;
    --color-primary-300: #266DA3;
    --color-primary-200: #236495;
    --color-primary-100: #205B88;
    --color-primary-red-800: #BA2018;
    --color-primary-red-700: #C9231A;
    --color-primary-red-600: #da251d;
    /* --color-primary-800: #238440;
    --color-primary-700: #2c954b;
    --color-primary-600: #37a857;*/
    --color-white: #fff;
    --side-bar-width: 300px;
    --side-bar-right-width: 749px;
    --color-grd-100: #DBEFFF;
    --color-grd-200: #B7D6EF;
    --color-grd-300: #B0DDFF;
    --color-grd-400: #93C7EF;
    --color-grd-500: #75B1DF;
    --color-grd-600: #589CCF;
    --color-grd-700: #3B86BF;
    --color-grd-800: #1D70AF;
    --color-grd-900: #005A9F;
    --color-grd-header: #e4effa;
    /* colors of Vehicles*/
    --color-v-header: #F6FDFF;
    --color-p2: #FFFFFF;
    /*colors of stops*/
    --color-p3: #FFFFFF;
    --color-s-header: #FFF7F5;
    --color-p5: #F07167;
    --color-nice: #5b6dcd;
    --color-shadow: rgba(0,0,0,.15);
    --border-radius: 8px;
    /*--color-panel-header: #dee1e6;*/
}

*, *:before, *:after {
    box-sizing: border-box;
}

input[type='checkbox'] {
    accent-color: var(--color-primary-800);
}


/** {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
}*/

textarea {
    resize: vertical;
}

html, input, select, textarea, button, .dxtcLite_DevEx, .dxgvControl_DevEx, .dxgvDisabled_DevEx {
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    color: var(--color-neutrals-800);
}


/*html, input, select, textarea {
    font-family: Tahoma, Geneva, sans-serif;
}*/


/*html, input, select, textarea {
    font-family: Roboto, sans-serif;
    font-size: 12px;
}*/



html, body {
    padding: 0;
    margin: 0;
}

html, body, .app, form, #content {
    height: 100vh;
}

/*    body.routing {
        overflow: hidden;
    }
*/
/*    body a {
        text-decoration: none;
    }*/
a {
    color: var(--color-primary-800);
    text-decoration: none;
}

input[type='number'], input[type='tel'], select, textarea, input[type='text'], input[type='password'] {
    border: none;
    outline: none;
    border: solid 1px var(--color-neutrals-400);
    padding: 5px;
    width: 100%;
    border-radius: 5px;
}

    /*.form select {
        width: 108px;
    }*/

    input:focus, select:focus, textarea:focus, input[type='text']:focus {
        border-color: var(--color-neutrals-600);
    }

.actionLine input[type='submit'] {
    margin-right: 8px;
}



.app {
    display: flex;
    position: relative;
    flex-direction: row;
}

.page {
    flex-grow: 1;
}

    .page > .inner {
        margin: 16px;
        padding: 16px;
        border: solid 1px var(--color-neutrals-400);
        border-radius: 8px;
        max-width: 940px;
    }

/* MENU */

/* SIDENAV MENU */


.sidenav {
    background-color: #fff;
    padding: 20px 0;
    width: var(--side-bar-width);
    height: calc(100% - 13px);
    flex-shrink: 0;
}

    .sidenav .account-info {
        padding: 8px 16px;
        font-size: 14px;
        text-align: center;
    }

    .sidenav .inner {
        overflow: auto;
        overflow-x: hidden;
        height: 100%;
    }



    .sidenav .btn-close {
        height: 25px;
        width: 25px;
        color: var(--color-neutrals-600);
        position: absolute;
        right: 24px;
        top: 8px;
        padding: 0;
        background-color: transparent;
        border: none;
        line-height: 25px;
        cursor: pointer;
        display: none;
    }


        .sidenav .btn-close:hover {
            color: var(--color-neutrals-800);
        }

        .sidenav .btn-close:active {
            color: var(--color-neutrals-900);
        }

    .sidenav .sticky-header {
        position: sticky;
        top: 0;
    }

    .sidenav .top-block {
        margin-bottom: 20px;
        display: flex;
        flex-direction: column;
        /* margin-top: 30px;*/
    }

    .sidenav .app-links-container {
        padding: 8px 16px;
        text-align: center;
        font-size: 14px;
    }

        .sidenav .app-links-container .app-links {
            margin: 8px 0 0 0;
        }

            .sidenav .app-links-container .app-links img {
                width: 100px;
            }

.menu-closed .slide-menu {
    transform: translateX(-100%);
}

.menu-open .slide-menu {
    transform: translateX(0);
}

.sidenav.slide-menu {
    background-color: #fff;
    /* height: 100%;*/
    transition: transform .3s ease-in-out;
    z-index: 20;
    position: fixed;
    top: 0;
    padding: 20px 0;
    /* width: 100%;
    max-width: var(--side-bar-width);*/
    border-right: 1px solid var(--color-neutrals-400);
}


    .sidenav.slide-menu .btn-close {
        display: block;
    }

/* END SIDENAV MENU */





.navbar {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    padding-right: 16px;
}


    .navbar .nav-item.active .nav-link {
        background-color: var(--color-neutrals-300);
    }

    .navbar .nav-item.active .nav-link, .navbar .nav-link:hover {
        border-radius: 0 16px 16px 0;
    }

    .navbar .nav-link {
        display: flex;
        align-items: center;
        color: var(--color-neutrals-800);
        /*padding: 8px 16px;*/

        padding: 0 16px;
        height: 32px;
        font-size: 14px;
        /*border-bottom: solid 1px var(--color-neutrals-100);*/
    }

        .navbar .nav-link:hover {
            background-color: var(--color-neutrals-100);
            border-radius: 0 16px 16px 0;
        }

        .navbar .nav-link:active {
            background-color: var(--color-neutrals-300);
        }


        .navbar .nav-link .nav-icon {
            margin-right: 16px;
        }

        .navbar .nav-link .nav-title {
            flex-grow: 1;
        }

    .navbar .dropdown-menu {
        transition: .3s;
        overflow: hidden;
        max-height: 0;
    }

        .navbar .dropdown-menu .nav-link {
            padding-left: 32px;
        }

    .navbar .expand-icon {
        transition: .3s;
    }

    .navbar .nav-item-expanded > a > .expand-icon {
        transform: rotate(180deg);
    }

/* END MENU */


/* BUTTONS */



.button-primary {
    cursor: pointer;
    border: none;
    border-radius: 14px;
    /*display: flex;*/
    /*height: 36px;*/
    /*align-items: center;*/
    /*justify-content: center;*/
    /*transition: all .2s ease-out;*/
    /*font: 600 1rem/1.42 Montserrat,sans-serif;*/
    /*font-weight:600;*/
    /*letter-spacing: .5px;*/
    background: var(--color-primary-800);
    color: var(--color-white);
    position: relative;
    padding: 4px 16px;
    min-width: 80px;
    border: solid 1px var(--color-primary-600);
}

    .button-primary:hover {
        background: var(--color-primary-700);
    }

    .button-primary:active {
        background: var(--color-primary-600);
    }

.button-secondary {
    cursor: pointer;
    border: none;
    border-radius: 14px;
    background: var(--color-neutrals-100);
    position: relative;
    padding: 4px 16px;
    border: solid 1px var(--color-neutrals-500);
    min-width: 80px;
}

    .button-secondary:hover {
        background: var(--color-neutrals-200);
    }

    .button-secondary:active {
        background: var(--color-neutrals-300);
    }

    .button-secondary:disabled, .button-primary:disabled {
        background: var(--color-neutrals-100);
        border: solid 1px var(--color-neutrals-400);
        color: var(--color-neutrals-400);
        cursor: default;
    }

    .button-secondary > .icon, .button-primary > .icon {
        font-size: 18px;
        margin-right: 5px;
    }


/* END BUTTONS */
.sidenav, .page {
    flex-shrink: 0;
}


.row {
    display: flex;
    flex-direction: row;
    align-items: center;
    line-height: 36px;
}

    .row.top {
        align-items: flex-start;
    }

.col {
    display: flex;
    flex-direction: column;
}

.col-500 {
    width: 500px;
}

.row label:first-child, .label {
    width: 150px;
    min-width: 150px;
    max-width: 150px;
    margin-right: 8px;
}

.row.no-label {
    padding-left: 158px;
}

.row.info {
    line-height: normal;
    margin-bottom: 8px;
}

.row input[type='checkbox'], .row input[type='radio'] {
    margin-right: 8px;
}
/*.row > input:not([type='checkbox']),
.row > .val,
.row > select,
.row > textarea {
    flex-grow: 1;
}*/
.page-header {
    line-height: 1.75rem;
    font-size: 22px;
    letter-spacing: 0;
    font-weight: 400;
    hyphens: auto;
    word-break: break-word;
    word-wrap: break-word;
    flex-grow: 0;
    flex-shrink: 0;
    margin: 0 0 16px 0;
    padding: 0;
    display: flex;
    align-items: center;
}

    .page-header .material-symbols-outlined {
        margin-right: 16px;
    }


.card-header {
    font-weight: 600;
}

.mr-16 {
    margin-right: 16px;
}

.mb-16 {
    margin-bottom: 16px;
}

.mt-16 {
    margin-top: 16px;
}


label.checkbox {
    display: flex;
    align-items: center;
}

    label.checkbox > span {
        margin-left: 8px;
    }
