﻿@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

body,
html {
    height: 100%;
    font-family: "Work Sans", sans-serif !important;
}

html,
body {
    height: 100%;
    margin: 0;
    padding: 0;
}

.main-wrapper {
    height: 100vh;
    display: flex;
    flex-direction: column;
}

/* .main-wrapper {
    padding-bottom: 60px; 
}


.container-fluid.h-100 {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.row.h-100 {
    flex: 1;
    display: flex;
}

.col-md-6 {
    display: flex;
    flex-direction: column;
    justify-content: center;
} */



.logo,
.logo-right {
    padding-top: 20px;
}

div.logo-right {
    margin-bottom: 29px !important;
}

.left-bg {
    background: #E5F1FF;
    /* padding: 60px !important; */
}

.logo img,
.logo-right img {
    max-width: 70px;
}

/* .left-panel {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
} */


/* Force the same height for all carousel images */
.carousel-inner {
    min-height: 515px;
    display: flex;
}

.carousel-item {
    text-align: center;
    height: 100%;
}

    .carousel-item img {
        width: 60%;
        /* Change this to the % you want */
        height: auto;
        object-fit: contain;
        margin: 0 auto;
        max-height: 500px;
    }


.carousel-indicators {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
}

/* .carousel-item img {
    width: 100%;
    height: 100%;
} */

.carousel-indicators {
    position: absolute;
    right: 0;
    bottom: -40px !important;
    left: 50% !important;
    padding: 0;
    margin: 0 !important;
}

    .carousel-indicators [data-bs-target] {
        fill: #FFF;
        filter: drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.25));
        width: 10px !important;
        height: 10px !important;
        border-radius: 50% !important;
        opacity: 1 !important;
    }

    .carousel-indicators button.active {
        background-color: #2F80ED !important;
    }




.auth-container {
    display: flex;
    height: 100%;
    gap: 30px;
}

.flex-item {
    flex: 1;
    /* makes both panels equal width */
    min-width: 0;
    /* fixes overflow issues */
}

.left-panel-content {
    padding-left: 50px;
}

/* .h-responsive {
    height: 120%;
} */


/* .main-wrapper {
    position: relative;
    height: 100vh;
    background-color: #fff;
}

.main-wrapper::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background-color: #E5F1FF;
    z-index: 0;
} */

/* Bring your container content above the background layer */
.container {
    position: relative;
    z-index: 1;
}

.auth-card {
    border-radius: 30px;
    background: #FFF;
    box-shadow: 0 -4px 30px 0 rgba(0, 0, 0, 0.10);
    padding: 23px 0px;
}

    .auth-card h5 {
        color: #000;
        font-family: "Work Sans";
        font-size: 25px;
        font-style: normal;
        font-weight: 400;
        line-height: 138%;
    }

    .auth-card h6 {
        color: #000;
        font-family: "Work Sans";
        font-size: 20px;
        font-style: normal;
        font-weight: 600;
        line-height: normal;
    }

    .auth-card h5 span {
        font-weight: 500 !important;
    }

.form-control {
    color: #6C737F !important;
    font-family: "Work Sans" !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: normal !important;
    border: none !important;
    border-bottom: 1px solid #E0E0E9 !important;
    border-radius: 0 !important;
    height: 35px !important;
}

.form-select {
    color: #6C737F !important;
    font-family: "Work Sans" !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 400 !important;
    line-height: normal !important;
    border: none !important;
    border-bottom: 1px solid #E0E0E9 !important;
    border-radius: 0 !important;
    height: 35px !important;
}

.form-control:focus {
    border-color: #04265f !important;
    box-shadow: none !important;
}

.form-select:focus {
    border-color: #04265f !important;
    box-shadow: none !important;
}

.form-control-icon {
    position: relative;
}

    .form-control-icon .input-icon {
        position: absolute;
        bottom: 12px;
    }

    .form-control-icon input.form-control {
        padding-left: 23px;
    }

.text-common {
    color: #2f80ed;
    font-family: "Work Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

    .text-common:hover {
        color: #2f80ed;
        font-family: "Work Sans";
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: normal;
    }

.btn-primary {
    height: 35px;
    display: inline-flex !important;
    justify-content: center;
    align-items: center;
    padding: 0 20px !important;
    border-radius: 5px !important;
    background: #04265F !important;
    border: 1px solid #04265F !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 600 !important;
}

.btn-secondary {
    height: 40px;
    display: inline-flex !important;
    justify-content: center;
    align-items: center;
    padding: 0 20px !important;
    border-radius: 10px !important;
    background: #2F80ED !important;
    border: 1px solid #2F80ED !important;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 600 !important;
}

.form-check-input:focus {
    box-shadow: none !important;
}

.divider-or {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 100%;
}

    .divider-or span {
        color: #000;
        font-size: 11.108px;
        font-style: normal;
        font-weight: 500;
        line-height: 180%;
        background: #fff;
        padding: 0 10px;
        position: absolute;
        z-index: 1;
        font-weight: 600;
        color: #000;
    }

    .divider-or::before {
        content: "";
        position: absolute;
        width: 1px;
        height: 100%;
        background: #E0E0E9;
        left: 50%;
        transform: translateX(-50%);
        z-index: 0;
    }


.login-center {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: start;
}

.text-body {
    color: rgba(0, 0, 0, 0.87);
    font-family: "Work Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.form-check-input:checked {
    background-color: #04265f !important;
    border-color: #04265f !important;
}

.pl-50 {
    padding-left: 50px !important;
}

.pr-50 {
    padding-right: 50px;
}

.slider-text h5 {
    font-weight: 600;
    color: #000;
    font-size: 20px;
    text-transform: capitalize;
}

.slider-text p {
    font-weight: 400;
    color: #000;
    font-size: 14px;
}

.footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 50px;
    /*background-color: #fff;*/
    font-size: 14px;
    background: transparent;
    /* box-shadow: 0px -4px 30px 0px rgba(0, 0, 0, 0.10);*/
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 10;
}

.footer-left {
    color: #383838;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    /* 128.571% */
}

.footer-right a {
    color: #000;
    font-family: "Work Sans";
    font-size: 13px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
    margin-left: 20px;
    text-decoration: underline;
    white-space: nowrap;
}

    .footer-right a:first-child {
        color: #2f80ed;
        /* Highlight PSMI Employee */
    }

    .footer-right a:hover {
        text-decoration: none;
    }

.form-ck {
    display: flex !important;
    align-items: center;
    gap: 7px;
}

.app-links img {
    filter: drop-shadow(0px 4px 20px rgba(0, 0, 0, 0.10));
    max-height: 48px;
}

a:hover {
    text-decoration: none !important;
}

@media only screen and (max-width: 769px) {
    .auth-container {
        flex-direction: column;
    }

    .pr-50 {
        padding-right: 0px !important;
        padding-bottom: 50px;
    }

    .auth-card {
        padding: 23px 20px;
    }

    .divider-or {
        margin-top: 10px;
    }
}


.centerd {
    height: 85%;
    justify-content: center;
    display: flex;
    flex-direction: column;
}

.left-panel {
    height: 85%;
    justify-content: center;
    display: flex;
    flex-direction: column;
}

.mt-2.app-links {
    margin-top: 4% !important;
    margin-bottom: 7%;
}

.hp-ratio .auth-card h5 {
    font-size: 20px;
}

.hp-ratio .form-control,
.hp-ratio .form-select {
    font-size: 12px !important;
}

.hp-ratio .btn-primary,
.hp-ratio .btn-secondary {
    height: 35px;
}

.hp-ratio .check-label.text-body {
    font-size: 11px;
}

.hp-ratio .text-common {
    font-size: 12px;
}

.hp-ratio .auth-card h6 {
    font-size: 16px;
}

.hp-ratio .mt-2.app-links {
    margin-top: 2% !important;
}

.hp-ratio .app-links img {
    max-height: 43px;
}

.hp-ratio form div.mb-3 {
    margin-bottom: 10px !important;
}

.hp-ratio .h-responsive.h-100 {
    height: 94% !important;
}

.hp-ratio .carousel-indicators {
    bottom: 40px !important;
}

.hp-ratio .form-control-icon .input-icon {
    font-size: 14px !important;
    bottom: 5px !important;
}

.vertical-links {
    margin: 0;
}

    .vertical-links > li {
        display: inline-block;
    }

        .vertical-links > li > a {
            font-weight: normal !important;
            margin-right: 22px;
            margin-left: 0px;
            text-decoration: none;
            letter-spacing: initial;
        }

.pull-right {
    float: right !important;
}

.display-none {
    display: none !important;
}

.form-control.k-widget {
    margin: 0;
}

.k-multiselect-wrap {
    height: 20px
}

    .k-multiselect-wrap li {
        top: 5px;
    }

.form-check .form-check-input {
    margin-top: 2px;
}

.iti--separate-dial-code .iti__selected-flag {
    background-color: #fff !important;
}

.ri-arrow-position {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Makes sure the icon doesn't block input clicks */
    cursor: pointer;
}

.ri-arrow-position-location {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none; /* Makes sure the icon doesn't block input clicks */
    cursor: pointer;
}

.forgotPasswordPopup {
    left: 33%;
    width: 34%;
    height: 374px;
}

.k-list-container {
    width: 20% !important;
    margin-left: 4px;
    margin-top: 1px;
}

.btn-default-alt {
    padding: 8px;
    border-radius: 5px;
    border: 1px solid #052760 !important;
    border-image: none;
    width: 165px;
    height: 35px;
    text-align: center;
    color: #052760;
    line-height: normal;
    letter-spacing: .4px;
    font-size: 14px !important;
    font-style: normal;
    font-weight: 600 !important;
    font-stretch: normal;
    background-color: #fff;
}

.k-list-container {
    background-color: #fff !important;
}

.k-treeview-lines li:hover {
    background-color: #eee !important;
}

.iti--separate-dial-code {
    width: 100%;
}

.qrCodePopup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    background: white;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
    width: 18%;
    display: none;
}

.otp-container {
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
}

.input-icon {
    /*color: #0d6efd;*/
    color: #4A90EF;
    font-size: 15px;
}

.otp-inputs {
    display: inline-flex;
    gap: 17px;
}

.otp-box {
    width: 35px;
    height: 38px;
    text-align: center;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 6px;
    outline: none;
    transition: 0.2s;
}

    .otp-box:focus {
        border-color: #007bff;
        box-shadow: 0 0 3px rgba(0, 123, 255, 0.5);
    }

.text-muted, .text-success {
    font-size: 12px;
    font-weight: 500 !important;
}

#dvOTPTxt {
    margin-top: 10px;
}

.text-muted {
    color: #7b829d;
}

.via {
    background: transparent !important;
    color: #005fff !important;
    border-bottom: 4px solid #005fff !important;
}

/*
#viaPassword-tab, #viaOtp-tab {
    border: none;
}

#loginTabs {
    border-bottom: 4px solid grey;
}*/
.nav > li {
    border-radius: 6px 6px 0 0;
    border-bottom: 4px solid #d9e1ee;
}

.nav-tabs li a {
    font-size: 14px !important;
}

.tab-act {
    border-bottom: 4px solid #4A90EF !important;
    border-radius: 0 !important;
    border: 0;
}

.tab-border {
    border-bottom: 4px solid #d9e1ee !important;
}

.nav > li > a:hover {
    text-decoration: none;
    background-color: none !important;
}

#viaPassword-tab:hover {
    text-decoration: none;
    background-color: none !important;
    border: none;
}

.active-tab {
    display: block !important;
}

.inactive-tab {
    display: none !important;
}

.animate-primary {
    text-decoration: none;
    position: relative;
    display: inline-block;
    color: #052760 !important;
}

.text-center {
    text-align: center !important;
}

.viapwd, .viaotp {
    text-align: center;
}

.nav > li > a {
    text-decoration: none;
    background-color: transparent;
    border: none !important;
}

    .nav > li > a:hover {
        text-decoration: none;
        background-color: transparent;
        border: none;
    }

#viaOtp-tab, #viaPassword-tab {
    font-size: 14px !important;
    font-weight: 600;
    padding: 10px 5px !important;
}

#resendOTP {
    position: relative;
    color: #052760;
    text-decoration: none;
    font-weight: 500;
}

    #resendOTP::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: -2px;
        width: 0;
        height: 2px;
        background-color: #052760;
        transition: width 0.3s ease;
    }

    #resendOTP:hover::after {
        width: 100%;
    }

.input-icon {
    font-size: 15px;
}

/*#viaPassword-tab, #viaOtp-tab {*/
/*color: #4A90EF;*/
/*color: #44546F;
}*/

.form-check-label a {
    color: #4A90EF;
    /*text-decoration: none;*/
    font-weight: 500;
}

.frgt-spc {
    margin-top: 1rem !important;
}

.chk-bx {
    margin-top: 3px;
    width: 16px !important;
    height: 16px !important;
}