@font-face {
    font-family: 'InterTight-SemiBold';
    src: url('../fonts/InterTight-SemiBold.ttf') format('truetype');
}
@font-face {
    font-family: 'InterTight-Bold';
    src: url('../fonts/InterTight-Bold.ttf') format('truetype');
}
@font-face {
    font-family: 'InterTight-Light';
    src: url('../fonts/InterTight-Light.ttf') format('truetype');
}
@font-face {
    font-family: 'InterTight-Medium';
    src: url('../fonts/InterTight-Medium.ttf') format('truetype');
}
        .btn-login{
            color: rgb(255, 255, 255);
            font-weight: 500;
            font-size: 14px;
            box-shadow: rgba(255, 111, 0, 0.3) 0px 5px 20px;
            background: linear-gradient(90deg, rgb(255, 193, 7) 0%, rgb(255, 111, 0) 100%);
            border-radius: 43px;
            padding: 5px 24px;
            animation: 2.4s ease 0s infinite normal none running pulse;
            border-width: 1px;
            border-style: solid;
            border-color: rgb(255, 255, 255);
            border-image: initial;
            margin-top: 27px;
        }
        /* Page Load Fade + Slide Animation */
        .page-animate {
            opacity: 0;
            transform: translateY(100px);
            animation: fadeSlideIn 0.7s ease-out forwards;
        }

        @keyframes fadeSlideIn {
            0% {
                opacity: 0;
                transform: translateY(20px);
            }
            100% {
                opacity: 1;
                transform: translateY(0);
            }
        }

        body {
            /*background-color: #0D3749;*/
            background: linear-gradient(135deg, #f9f6f1 10%, #e5f9fd 100%);
            height: 100vh;
            display: flex;
            align-items: center;
            background-repeat: no-repeat;
            background-size: contain;
            background-position: center center;
            position: relative;
        }


        .auth-loader {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(255, 255, 255, 0.9);
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            z-index: 9999999;
            backdrop-filter: blur(3px);
        }

        .loader-circle {
            width: 55px;
            height: 55px;
            border: 5px solid #d6d6d6;
            border-top: 5px solid #0d3749;
            border-radius: 50%;
            animation: spinLoader 0.9s linear infinite;
        }

        @keyframes spinLoader {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }

        #authLoader p {
            margin-top: 15px;
            font-size: 16px;
            color: #0d3749;
            font-weight: 600;
        }

        
        .login-container {
            max-width: 400px;
            width: 100%;
        }


        .login-title {
            margin-bottom: 20px;
            animation: slideFade 0.8s ease-out forwards;
        }

        .login-title h4 {
            color: rgb(14, 57, 75) !important;
            font-family: 'InterTight-Light';
            text-transform: uppercase;
            font-size: 20px;
            letter-spacing: 1px;
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        /* Icon Animation */
        .login-title h4 i {
            font-size: 27px;
            animation: pulseIcon 3.27s infinite;
            color: transparent;
            background: linear-gradient(90deg, #ffba06 0%, #ff7901 100%);
            -webkit-background-clip: text;
        }

        /* Slide + Fade animation */
        @keyframes slideFade {
            0% {
                opacity: 0;
                transform: translateY(15px);
            }
            100% {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Soft pulse animation (Mobile App feel) */
        @keyframes pulseIcon {
            0% {
                transform: scale(1);
                opacity: 1;
            }
            50% {
                transform: scale(1.15);
                opacity: 0.8;
            }
            100% {
                transform: scale(1);
                opacity: 1;
            }
        }


        .logo-wrap{
            padding: 25px 20px 0px 20px;
            display: table;
            margin: auto;
            background: #acacac;
            box-shadow: rgba(255, 111, 0, 0.3) 0px 5px 20px;
            border: 1px solid #fff;
            border-bottom: none;
            border-radius: 7px 7px 0px 0px;
            overflow: hidden;
        }
        
        .card {
            border-radius: 15px;
            box-shadow: rgba(13, 55, 73, 0.15) 0px 0px 30px inset;
            background: linear-gradient(145deg, #d4f9fd, #f1e4d7) !important;
            /*background: linear-gradient(135deg, rgb(249, 246, 241) 10%, rgb(229, 249, 253) 100%);*/
            border-width: 1px;
            border-style: solid;
            border-color: rgb(255, 121, 1);
            border-image: initial;
            border-radius: 8px;
        }
        
        .card-header {
            border-radius: 15px 15px 0 0 !important;
            text-align: center;
            padding: 1.5rem;
            padding-bottom: 0px;
        }
        
        .form-control:focus {
            border-color: var(--primary-color);
            box-shadow: 0 0 0 0.25rem rgba(52, 152, 219, 0.25);
        }

        .card-body h3{
            font-family: 'InterTight-Light';
        }
        
        
        .logo {
            width: 80px;
            height: 80px;
            margin: 0 auto 15px;
            display: block;
        }
        .btn-login:hover{
            background-color: #4587a4;
        }
        .btn-login:focus{
            background-color: #4587a4;
        }

        .forgetpass_division a{
            color: rgb(14, 57, 75)!important;
        }
        label{
            font-family: 'InterTight-Light', sans-serif;
        }

        .slide-up-img {
            opacity: 0;
            transform: translateY(-40px);
            animation: slideUpFade 0.9s ease-out forwards;
            animation-delay: 0.3s; /* thoda premium feel */
        }

        @keyframes slideUpFade {
            0% {
                opacity: 0;
                transform: translateY(40px);
            }
            100% {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @media (max-width: 767px) {
            .slide-up-img {
                animation-duration: 1.7s;
            }
        }

        /* Common placeholder style */
        ::placeholder {
            font-size: 12px;
            font-weight: 300;
            color: #9aa5b1;
            font-family: 'InterTight-Light', sans-serif;
        }

        /* Chrome, Edge, Safari */
        ::-webkit-input-placeholder {
            font-size: 12px;
            font-weight: 300;
            color: #9aa5b1;
        }

        /* Firefox */
        ::-moz-placeholder {
            font-size: 12px;
            font-weight: 300;
            color: #9aa5b1;
        }

        /* Internet Explorer (old) */
        :-ms-input-placeholder {
            font-size: 12px;
            font-weight: 300;
            color: #9aa5b1;
        }

        @media (max-width: 767px){
            .login-container {
                max-width: 350px;
                width: 100%;
            }

            .login-container .card-header .img-fluid{
                width: 200px;
            }

            .login-container .card-body{
                padding: 8px!important;
            }
            .card-body h3{
                margin-top: 30px;
            }
            .card-body #forgotpass label{
                    font-size: 13px;
            }
            ::placeholder {
                font-size: 11px;
            }

            div:where(.swal2-container).swal2-center>.swal2-popup {
                width: 83%!important;
            }
        }

    
        /*SWEET ALERT CSS START*/
            div:where(.swal2-container).swal2-center>.swal2-popup {
                background: linear-gradient(145deg, #d4f9fd, #f1e4d7) !important;
                width: 33%;
            }

            div:where(.swal2-icon).swal2-question {
                border-color: #ff7901!important;
                color: #ff7901!important;
            }

            div:where(.swal2-container) h2:where(.swal2-title){
                color: #0d3749!important;
                font-family: 'InterTight-Light'!important;
            }

            div:where(.swal2-container) div:where(.swal2-html-container){
                color: #0d3749!important;
                font-family: 'InterTight-Medium'!important;
            }

            div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-confirm){
                padding: 6px 27px !important;
                border-radius: 70px !important;
                border: none !important;
                color: #fff !important;
                font-size: 15px !important;
                text-decoration: none !important;
                box-shadow: rgba(255, 111, 0, 0.3) 0px 5px 20px!important;
                background: linear-gradient(90deg, rgb(255, 193, 7) 0%, rgb(255, 111, 0) 100%)!important;
                transition: all 0.3s ease !important;
                text-transform: uppercase !important;
                border-width: 1px!important;
                border-style: solid!important;
                border-color: rgb(255, 255, 255)!important;
                border-image: initial!important;
            }

            div:where(.swal2-container) button:where(.swal2-styled):where(.swal2-cancel){
                padding: 6px 27px !important;
                border-radius: 70px !important;
                border: none !important;
                font-size: 15px !important;
                text-decoration: none !important;
                box-shadow: 0 4px 10px rgba(13, 55, 73, 0.15) !important;
                transition: all 0.3s ease !important;
                text-transform: uppercase !important;
            }

            .div:where(.swal2-container) div:where(.swal2-popup){
                max-width: 92%important;
            }
        /*SWEET ALERT CSS END*/
