* {
    padding: 0;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
}

body {
	background: linear-gradient(45deg, #A0A2A1, #5B605D, #232523);
}

.container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.form-container-wrapper {
    background: conic-gradient(#3492D0 0%, #3492D0 20%, #00ffff 28%, #62e7e7 30%, #38d8e3 32%, #58ecf7 34%, #3492D0 60%, #4A88B0 70%, #3DCBFD 76%, #3DCBFD 78%, #3492D0 80%, #3492D0 100%);
    border-radius: 2.5rem;
    padding: 1px;
    box-shadow: 0 0 50px 0 black;
    position: relative;
    overflow: hidden;
}

.form-container {
    background: linear-gradient(to bottom right, #1c5379, #1a7fa0);
    padding: 3rem;
    border-radius: 2.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.form-container-flare::before {
    content: '';
    width: 1px;
    height: 30px;
    background: linear-gradient(to bottom, #39afe7, #8effff, #3ecafc);
    left: 0;
    position: absolute;
    top: 40%;
    box-shadow:
        0 0 15px 5px rgba(142, 255, 255, 0.3),
        0 0 20px 15px rgba(1, 153, 255, 0.7);
}

.form-container-flare::after {
    content: '';
    width: 1px;
    height: 30px;
    background: linear-gradient(to bottom, #19CBFB, #89FCFF, #19CBFB);
    position: absolute;
    top: 56%;
    right: 0;
    box-shadow:
        0 0 15px 5px rgb(1 255 242 / 75%),
        0 0 15px 15px rgb(114 255 255 / 30%),
        0 0 20px 25px rgb(1 153 255 / 100%);
}

.icon-container {
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    border: 3px solid #47c9fc;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 3rem;
}

.icon-door {
    font-size: 3rem;
    color: #47c9fc;
}

.input-wrapper {
    position: relative;
}

.input-wrapper .input-icon {
    position: absolute;
    color: #bcc0c2;
    top: 8px;
    margin-left: 15px;
}

input.text-style {
    padding: 10px 10px 10px 50px;
    border: none;
    background: linear-gradient(to right, #002250, #015696);
    margin-bottom: 10px;
    color: #d5e1f6;
    outline: none;
}

::-webkit-input-placeholder {
    color: #bcc0c2;
}

.remember-forgot {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lbl-remember {
    font-size: 12px;
    color: #bcc0c2;
}

.forgot {
    font-size: 12px;
    color: #bcc0c2;
    font-style: italic;
    text-decoration: none;
}

button.btn-login {
    background: linear-gradient(to right, #002250, #015696);
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    border: none;
    margin-top: 20px;
    color: #d6e1f6;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: 2px;
}
