
        /* =================================================
           LOGIN PAGE
        ================================================= */

        .login-page {

            min-height: calc(100vh - 90px);

            padding: 130px 20px 90px;

            background:
                linear-gradient(
                    135deg,
                    #f8fafc 0%,
                    #ffffff 50%,
                    #f5f7fb 100%
                );

            position: relative;

            overflow: hidden;

            display: flex;

            align-items: center;
        }


        /* Decorative background */

        .login-page::before {

            content: "";

            position: absolute;

            width: 400px;
            height: 400px;

            background: rgba(215, 25, 32, .08);

            border-radius: 50%;

            filter: blur(80px);

            top: -150px;
            left: -150px;
        }


        .login-page::after {

            content: "";

            position: absolute;

            width: 350px;
            height: 350px;

            background: rgba(9, 27, 60, .07);

            border-radius: 50%;

            filter: blur(80px);

            bottom: -150px;
            right: -100px;
        }


        /* =================================================
           CONTAINER
        ================================================= */

        .login-container {

            width: 100%;

            max-width: 1150px;

            margin: auto;

            position: relative;

            z-index: 2;
        }


        /* =================================================
           LOGIN BOX
        ================================================= */

        .login-wrapper {

            display: grid;

            grid-template-columns: 1fr 480px;

            background: #ffffff;

            border-radius: 30px;

            overflow: hidden;

            box-shadow:
                0 30px 80px rgba(0, 0, 0, .10);

            min-height: 570px;
        }


        /* =================================================
           LEFT INFORMATION PANEL
        ================================================= */

        .login-info {

            position: relative;

            padding: 70px;

            display: flex;

            flex-direction: column;

            justify-content: center;

            color: #ffffff;

            background:
                linear-gradient(
                    135deg,
                    rgba(8, 20, 45, .95),
                    rgba(20, 28, 50, .92)
                ),
                url("<?php echo BASE_URL . 'assets/images/slider/1.jpg'; ?>")
                center/cover;

            overflow: hidden;
        }


        .login-info::before {

            content: "";

            position: absolute;

            width: 300px;
            height: 300px;

            background: rgba(215, 25, 32, .25);

            border-radius: 50%;

            filter: blur(80px);

            right: -100px;

            top: -100px;
        }


        .login-info-content {

            position: relative;

            z-index: 2;

            max-width: 500px;
        }


        .login-tag {

            display: inline-flex;

            align-items: center;

            gap: 8px;

            padding: 9px 17px;

            margin-bottom: 25px;

            border-radius: 40px;

            background: rgba(255,255,255,.10);

            border: 1px solid rgba(255,255,255,.15);

            color: #ff6970;

            font-size: 11px;

            font-weight: 700;

            letter-spacing: 1.5px;

            text-transform: uppercase;
        }


        .login-info h1 {

            margin: 0 0 20px;

            color: #ffffff;

            font-size: clamp(35px, 4vw, 55px);

            font-weight: 800;

            line-height: 1.1;
        }


        .login-info h1 span {

            color: #d71920;
        }


        .login-info p {

            margin: 0;

            max-width: 560px;

            color: rgba(255,255,255,.75);

            font-size: 16px;

            line-height: 1.9;
        }


        /* Features */

        .login-features {

            margin-top: 40px;

            display: grid;

            grid-template-columns: repeat(2, 1fr);

            gap: 15px;
        }


        .login-feature {

            display: flex;

            align-items: center;

            gap: 12px;

            padding: 14px;

            border-radius: 12px;

            background: rgba(255,255,255,.07);

            border: 1px solid rgba(255,255,255,.08);

            color: rgba(255,255,255,.85);

            font-size: 12px;
        }


        .login-feature i {

            width: 34px;

            height: 34px;

            flex-shrink: 0;

            display: flex;

            align-items: center;

            justify-content: center;

            border-radius: 50%;

            background: #d71920;

            color: #ffffff;

            font-size: 13px;
        }


        /* =================================================
           RIGHT LOGIN PANEL
        ================================================= */

        .login-form-panel {

            padding: 60px 55px;

            display: flex;

            align-items: center;

            background: #ffffff;
        }


        .login-form-container {

            width: 100%;
        }


        /* Heading */

        .login-form-header {

            margin-bottom: 35px;
        }


        .login-form-header .form-icon {

            width: 60px;

            height: 60px;

            margin-bottom: 20px;

            display: flex;

            align-items: center;

            justify-content: center;

            border-radius: 18px;

            background: rgba(215,25,32,.10);

            color: #d71920;

            font-size: 23px;
        }


        .login-form-header h2 {

            margin: 0 0 10px;

            color: #091b3c;

            font-size: 30px;

            font-weight: 800;
        }


        .login-form-header p {

            margin: 0;

            color: #777;

            font-size: 13px;

            line-height: 1.7;
        }


        /* =================================================
           FORM
        ================================================= */

        .login-form .form-group {

            margin-bottom: 22px;
        }


        .login-form label {

            display: block;

            margin-bottom: 8px;

            color: #25304a;

            font-size: 12px;

            font-weight: 700;
        }


        .input-wrapper {

            position: relative;
        }


        .input-wrapper > i {

            position: absolute;

            left: 17px;

            top: 50%;

            transform: translateY(-50%);

            color: #999;

            font-size: 14px;

            pointer-events: none;

            z-index: 2;
        }


        .login-form input[type="email"],
        .login-form input[type="password"],
        .login-form input[type="text"] {

            width: 100%;

            height: 52px;

            padding: 0 18px 0 45px;

            border: 1px solid #e5e7eb;

            border-radius: 12px;

            background: #f9fafb;

            color: #222;

            font-family: 'Open Sans', sans-serif;

            font-size: 13px;

            outline: none;

            box-shadow: none;

            transition: all .3s ease;

            box-sizing: border-box;
        }


        .login-form input:focus {

            border-color: #d71920;

            background: #ffffff;

            box-shadow:
                0 0 0 4px rgba(215,25,32,.08);
        }


        /* Password */

       /* =========================================================
   PASSWORD INPUT WRAPPER
========================================================= */

.password-wrapper {
    width: 100%;
}

.input-wrapper {
    position: relative;
    width: 100%;
}


/* =========================================================
   PASSWORD INPUT
========================================================= */

.input-wrapper input[type="password"],
.input-wrapper input[type="text"] {
    width: 100%;
    height: 52px;

    box-sizing: border-box;

    /* Space for lock + eye */
    padding: 12px 50px 12px 45px;

    line-height: 1.4;
}


/* =========================================================
   LOCK ICON
========================================================= */

.input-wrapper > .fa-lock {
    position: absolute;

    left: 15px;
    top: 50%;

    transform: translateY(-50%);

    color: #777;
    font-size: 16px;

    z-index: 2;

    pointer-events: none;
}


/* =========================================================
   PASSWORD EYE
========================================================= */

.input-wrapper .toggle-eye {
    position: absolute;

    right: 12px;
    top: 50%;

    /* THIS CENTERS THE EYE VERTICALLY */
    transform: translateY(-50%);

    width: 36px;
    height: 36px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;
    margin: 0;

    color: #777;

    cursor: pointer;

    z-index: 10;

    line-height: 1;

    border-radius: 50%;

    transition: all 0.2s ease;
}


/* Eye icon itself */

.input-wrapper .toggle-eye i {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    margin: 0;
    padding: 0;

    font-size: 16px;

    line-height: 1;

    pointer-events: none;
}


/* =========================================================
   EYE HOVER
========================================================= */

.input-wrapper .toggle-eye:hover {
    color: #d71920;
    background: rgba(215, 25, 32, 0.08);
}


/* =========================================================
   SHOW PASSWORD
========================================================= */

.show-password {
    display: flex;
    align-items: center;

    gap: 7px;

    margin-top: 10px;

    cursor: pointer;
}

.show-password input {
    margin: 0;
    cursor: pointer;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .input-wrapper input[type="password"],
    .input-wrapper input[type="text"] {
        height: 50px;

        padding-left: 42px;
        padding-right: 48px;
    }

    .input-wrapper > .fa-lock {
        left: 13px;
    }

    .input-wrapper .toggle-eye {
        right: 8px;

        width: 34px;
        height: 34px;
    }

    .input-wrapper .toggle-eye i {
        font-size: 15px;
    }

}

        /* =================================================
           FORM OPTIONS
        ================================================= */

        .login-options {

            display: flex;

            align-items: center;

            justify-content: space-between;

            gap: 15px;

            margin-top: 5px;

            margin-bottom: 25px;
        }


        .remember-option {

            display: flex !important;

            align-items: center;

            gap: 7px;

            margin: 0 !important;

            color: #777 !important;

            font-size: 11px !important;

            font-weight: 500 !important;

            cursor: pointer;
        }


        .remember-option input {

            width: 15px !important;

            height: 15px !important;

            margin: 0 !important;

            padding: 0 !important;

            accent-color: #d71920;

            box-shadow: none !important;
        }


        .forgot-link {

            color: #d71920;

            text-decoration: none;

            font-size: 11px;

            font-weight: 700;

            white-space: nowrap;
        }


        .forgot-link:hover {

            color: #091b3c;

            text-decoration: none;
        }


        /* Show password */

        .show-password {

            display: flex;

            align-items: center;

            gap: 7px;

            margin-top: 9px;

            color: #777;

            font-size: 11px;
        }


        .show-password input {

            width: 14px;

            height: 14px;

            accent-color: #d71920;
        }


        /* =================================================
           LOGIN BUTTON
        ================================================= */

        .login-submit {

            width: 100%;

            height: 54px;

            border: none;

            border-radius: 30px;

            background: #d71920;

            color: #ffffff;

            font-family: 'Montserrat', sans-serif;

            font-size: 13px;

            font-weight: 700;

            cursor: pointer;

            display: flex;

            align-items: center;

            justify-content: center;

            gap: 10px;

            transition: all .35s ease;
        }


        .login-submit:hover {

            background: #b9141b;

            transform: translateY(-3px);

            box-shadow:
                0 15px 30px rgba(215,25,32,.25);
        }


        .login-submit i {

            transition: transform .3s ease;
        }


        .login-submit:hover i {

            transform: translateX(5px);
        }


        /* =================================================
           SECURITY TEXT
        ================================================= */

        .login-security {

            margin-top: 25px;

            padding-top: 20px;

            border-top: 1px solid #eee;

            text-align: center;

            color: #999;

            font-size: 10px;

            line-height: 1.6;
        }


        .login-security i {

            color: #d71920;

            margin-right: 5px;
        }


        /* =================================================
           ERRORS / MESSAGES
        ================================================= */

        .login-form .text-danger {

            display: block;

            margin-top: 6px;

            font-size: 10px;

            color: #d71920;
        }


        /* Make existing validation/message boxes fit */

        .login-form #msg {

            margin-bottom: 20px;
        }


        /* =================================================
           TABLET
        ================================================= */

        @media (max-width: 992px) {

            .login-wrapper {

                grid-template-columns: 1fr 420px;
            }


            .login-info {

                padding: 50px;
            }


            .login-form-panel {

                padding: 50px 40px;
            }

        }


        /* =================================================
           MOBILE
        ================================================= */

        @media (max-width: 768px) {

            .login-page {

                min-height: auto;

                padding: 120px 15px 60px;
            }


            .login-wrapper {

                grid-template-columns: 1fr;

                border-radius: 22px;
            }


            .login-info {

                padding: 45px 30px;
            }


            .login-info h1 {

                font-size: 38px;
            }


            .login-info p {

                font-size: 14px;
            }


            .login-features {

                grid-template-columns: 1fr;
            }


            .login-form-panel {

                padding: 40px 25px;
            }

        }


        /* =================================================
           SMALL MOBILE
        ================================================= */

        @media (max-width: 480px) {

            .login-page {

                padding-left: 10px;

                padding-right: 10px;
            }


            .login-info {

                padding: 35px 22px;
            }


            .login-form-panel {

                padding: 35px 20px;
            }


            .login-form-header h2 {

                font-size: 26px;
            }


            .login-options {

                align-items: flex-start;

                flex-direction: column;
            }

        }