﻿@charset "UTF-8";

@font-face {
    font-family: 'worksans-medium';
    src: url('../fonts/WorkSans-Medium.woff2') format('woff2'), url('../fonts/WorkSans-Medium.woff') format('woff');
    font-display: swap;
}

.particleBackground {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    z-index: 0;
}

body {
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    font-family: 'worksans-medium', Verdana, Arial, Helvetica, sans-serif;
    font-size: .8em;
    color: #000000;
    background: #fff;
    background-image: linear-gradient(to right bottom, #146eb4, #4b8ec8, #609cd0, #74aad7, #88b8df, #9cc6e7, #aecfed, #bed8f2, #cee1f7, #dee8f9, #ebeffb, #f6f7fd, #ffffff);
    /*background-image: linear-gradient(to bottom, #ffffff, #f4f5fd, #e6ebfc, #d4e3fb, #bfdbf9, #aed4f6, #9dcdf2, #89c7ee, #79bfe9, #67b7e4, #54afe0, #3ca7db);*/
    /*background: #c4f0ff;
    background: #146eb4;
    background: #0066b2;    
    background-image: url('../images/login/bg-image.png');
    background-repeat: no-repeat;
    background-size: cover;*/
}

/* body::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgb(20, 110, 180, 0.7);
        background: #cccccc4c;
        pointer-events: none;
        z-index: -1;
        backdrop-filter: blur(2px);
        box-shadow: inset 0 0 50px rgba(0, 0, 0, 0.2);
    }*/

.company-logo {
    top: 2.5vh;
    left: 2.5vw;
    position: absolute;
}

.login-background-container {
    position: absolute;
    width: 25vw;
    height: 100vh;
    background: #44c7f5;
    z-index: -1;
    padding: 30px;
    border-right: 5px solid #cccccc;
    /*background: #fff;*/
}

.login-background-image {
    position: absolute;
    top: 20vh;
    z-index: 1;
    left: 4vw;
    /*width: 85%;*/
}

.wrapper {
    margin: 0 auto;
    width: 100%;
    max-width: 100vw;
    min-height: 100vh;
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.login-container {
    position: relative;
    width: 100%;
    max-width: 25vw;
    height: auto;
    display: flex;
    background: #ffffff;
    /*border: 2px solid #ccc;*/
    box-shadow: 0 0 5px #808080;
    border-radius: 5px;
    /*left: 30vw !important;*/
    padding-bottom: 0;
    opacity: .8;
}

.login-background-panel {
    /*background: #0c3866;*/
    background: transparent;
    border-radius: 2px;
    /*background-image: linear-gradient(to bottom, #ffffff, #f4f5fd, #e6ebfc, #d4e3fb, #bfdbf9, #aed4f6, #9dcdf2, #89c7ee, #79bfe9, #67b7e4, #54afe0, #3ca7db);*/
}

.login-information-section {
    /*background-image: url('../images/login/bg-image.png');
    background-repeat: no-repeat;
    background-position: 100% 100%;    
    opacity: .7;*/
    background-image: url('../images/login/bg-main.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    /*background-size: 60vw 60vh;*/
    /*background-color: #ffffff;*/
}

.col-left,
.col-right {
    padding: 5px;
    display: flex;
}

.col-left {
    width: 35%;
    /*-webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
    clip-path: polygon(0 0, 0% 100%, 100% 0);*/
    background: #146eb4;
    padding: 25px 25px;
}

.col-right {
    width: 100%;
    padding: 5px 5px;
    /*margin-left: -3%;*/
}

.login-text {
    position: relative;
    width: 100%;
    color: #ffffff;
}

    .login-text h2 {
        margin: 0 0 5px 0;
        font-size: 20px;
        font-weight: 700;
    }

    .login-text p {
        margin: 0 0 20px 0;
        font-size: 16px;
        font-weight: 500;
        line-height: 22px;
    }

    .login-text .btn {
        display: inline-block;
        padding: 7px 20px;
        letter-spacing: 1px;
        text-decoration: none;
        border-radius: 30px;
        color: #ffffff;
        outline: none;
        border: 1px solid #ffffff;
        box-shadow: inset 0 0 0 0 #ffffff;
        transition: .3s;
        -webkit-transition: .3s;
    }

        .login-text .btn:hover {
            color: #44c7f5;
            box-shadow: inset 150px 0 0 0 #ffffff;
        }

.login-form {
    position: relative;
    width: 100%;
}

    .login-form h2 {
        margin: 10px 10px 15px 10px;
        font-size: 1.5rem;
        background-color: #146eb4;
        padding-top: 1.5rem;
        color: #fff;
    }

    .login-form .header-text {
        text-align: center !important;
        padding-bottom: 1.5rem;
        margin-bottom: .5rem;
        margin-top: 2rem;
    }

    .login-form img {
        text-align: center;
    }

    .login-form p {
        margin: 0 0 5px 0;
        text-align: justify;
        color: #000000;
    }

        .login-form p:last-child {
            margin: 0;
            padding-top: 3px;
        }

        .login-form p a {
            color: #44c7f5;
            text-decoration: none;
        }

    .login-form label {
        display: block;
        width: 100%;
        margin-bottom: 5px;
        letter-spacing: .5px;
        font-weight: 500;
    }

    .login-form p:last-child label {
        width: 60%;
        float: left;
    }

    .login-form label span {
        color: #ff574e;
        padding-left: 2px;
    }

    .login-form input {
        display: block;
        width: 100%;
        height: 35px;
        padding: 0 10px;
        outline: none;
        border: 1px solid #cccccc;
        border-radius: 0px;
        cursor: pointer;
        font-family: inherit;
        font-size: 12px;
    }

        .login-form input:focus {
            border-color: #146eb4;
        }

        .login-form button,
        .login-form input[type=submit] {
            display: inline-block;
            width: 100%;
            margin-top: 15px;
            color: #146eb4;
            letter-spacing: 1px;
            cursor: pointer;
            background: transparent;
            border: 1px solid #146eb4;
            border-radius: 0px;
            box-shadow: inset 0 0 0 0 #44c7f5;
            transition: .3s;
            -webkit-transition: .3s;
            outline: none;
        }

/* BUTTON STYLE */
#btnLogin {
    position: relative;
    padding: 10px 20px;
    cursor: pointer;
    background-color: #146eb4;
    color: #ffffff;
    border: 0;
    outline: none;
}

    #btnLogin:hover {
        color: #ffffff;
        box-shadow: inset 280px 0 0 0 #146eb4;
    }

    #btnLogin:disabled {
        background-color: #ccc;
        cursor: not-allowed;
    }

#btnLoginSSO {
    position: relative;
    padding: 10px 10px;
    cursor: pointer;
    /*background-color: #002b69;
    background-color: #146eb4;*/
    background-color: #0078D4;
    color: #fff;
    border: 0;
    outline: none;
}

    #btnLoginSSO:hover {
        color: #000;
        /*box-shadow: inset 280px 0 0 0 #44c7f5;*/
        border: 0;
        background-color: #44c7f5;
    }

    #btnLoginSSO:disabled {
        background-color: #ccc;
        cursor: not-allowed;
    }

/* LOADING ICON STYLE */
.loading-icon {
    position: absolute;
    right: 10px; /* Adjust position as needed */
    top: 50%;
    transform: translateY(-50%);
    display: none;
}

.loading-icon-sso {
    position: absolute;
    right: 10px; /* Adjust position as needed */
    top: 50%;
    transform: translateY(-50%);
    display: none;
}

.validation-alert {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 50vw;
    width: auto;
    margin: 0;
    padding: 10px 20px;
    z-index: 1050;
}

.loading-indicator {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9998;
}

    .loading-indicator .backdrop {
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        /*background-color: rgba(0, 0, 0, 0.5);*/
        background-color: #ffffff;
        opacity: .5;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .loading-indicator .spinner {
        z-index: 10000;
        display: flex;
        align-items: center;
        justify-content: center;
    }

.footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #ffffff;
    background-color: transparent;
    color: #fff;
    /*text-align: right;*/
    text-align: center;
    font-weight: normal;
    height: 25px;
    /*padding-top: 3px;
    padding-right: 25px;
    font-family: Verdana;*/
}


/* TAB CONTAINERS IN THE LOGIN PAGE - START*/

.tab-container {
    width: 90%;
    margin: 0px auto;
    padding: 0;
    background-color: #fff;
    /*border: 1px solid #d6f4ff;
    min-height: 250px;*/
}

.tabs {
    display: flex;
    background-color: #146eb4;
    /*border-bottom: 1px solid #ededed;*/
}

.tab {
    flex: 1;
    padding: 10px;
    text-align: center;
    cursor: pointer;
    background-color: #e8f9ff;
    /*border: 1px solid #ddd;*/
    border-bottom: none;
    font-weight: normal;
}

    .tab:hover {
        background-color: #44c7f5;
    }

    .tab.active {
        background-color: #146eb4;
        background-color: #fff;
        color: #000;
        /*border-top: 2px solid #007BFF;*/
        font-weight: normal;
    }

.tab-content {
    padding: 3px;
}

.tab-panel {
    display: none;
    min-height: 175px;
    padding: 10px;
    padding-left: 2px;
    padding-right: 2px;
}

    /*.tab-panel.active {
        display: block;
    }*/

    .tab-panel.active {
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        height: 100%;
    }


/* TAB CONTAINERS IN THE LOGIN PAGE - END */


/* Wave Animation */
@keyframes wave-animation {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@media (min-width: 300px) and (max-width: 1200px) {

    body {
        font-size: .8rem;
        background: none;
    }

    .company-logo {
        top: 5vh;
        left: 30vw;
        position: absolute;
        z-index: 100;
    }

    .login-container {
        flex-direction: column;
        box-shadow: none;
        max-width: 100vw;
        left: 0vw !important;
    }

    .login-form {
        width: 100% !important;
    }

    .col-left,
    .col-right {
        width: 100%;
        margin: 0;
        -webkit-clip-path: none;
        clip-path: none;
    }

    .col-right {
        padding: 30px;
    }


    .login-text h2 {
        font-size: 15px;
        font-weight: 400;
    }

    .login-form .header-text {
        padding-bottom: 5px;
    }

    .login-form p {
        margin: 0 0 1px 0;
    }

        .login-form p:last-child {
            margin: 0;
            padding-top: 1px;
        }


    .login-form label {
        font-size: 11px;
    }

    .login-form input {
        font-size: 11px;
    }

    #btnLogin {
        font-size: .8em;
        outline: none;
    }

    #btnLoginSSO {
        font-size: .8em;
        outline: none;
    }

    .validation-alert {
        position: fixed;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
        width: auto;
        margin: 0;
        padding: 5px 10px;
        z-index: 1050;
    }

    .footer {
        font-size: .7em;
        text-align: center !important;
        padding-right: 0 !important;
    }
}


@media (min-resolution: 144dpi) and (max-resolution: 159dpi) {
    body {
        font-size: .7em;
    }

    .company-logo {
        top: 5vh;
        left: 2vw;
        position: absolute;
        z-index: 100;
    }

    .login-container {
        flex-direction: column;
        box-shadow: none;
        /* max-width: 40vw;
        left: 25vw !important;*/
        padding: 0 !important;
        margin: 0 !important;
        border-radius: 0;
    }

    .login-form {
        width: 100% !important;
        padding: 5px;
        margin: 0 !important;
        margin-top: 0em !important;
        margin-bottom: 0em !important;
    }

    .header-text {
        padding: 1px;
        margin: 0 !important;
        margin-top: .5em !important;
        margin-bottom: .2em !important;
    }

    .footer {
        text-align: right !important;
        padding-right: 2em !important;
    }
}
