/* ====================================
   LOGIN PAGE
==================================== */

.login-page{

min-height:100vh;

display:flex;

align-items:center;

justify-content:center;

padding:140px 20px 80px;

position:relative;

z-index:2;
}

/* ====================================
   LOGIN WRAPPER
==================================== */

.login-wrapper{

width:100%;

max-width:520px;
}

/* ====================================
   LOGIN CARD
==================================== */

.login-card{

position:relative;

background:rgba(10,15,35,.78);

border:1px solid rgba(255,255,255,.08);

border-radius:32px;

padding:55px 45px;

backdrop-filter:blur(20px);

box-shadow:
0 0 60px rgba(0,216,255,.08),
0 0 120px rgba(0,0,0,.5);

overflow:hidden;
}

/* ====================================
   GLOW EFFECT
==================================== */

.login-card::before{

content:'';

position:absolute;

top:-120px;

right:-120px;

width:240px;

height:240px;

background:rgba(0,216,255,.18);

filter:blur(90px);

border-radius:50%;

z-index:0;
}

.login-card::after{

content:'';

position:absolute;

bottom:-120px;

left:-120px;

width:220px;

height:220px;

background:rgba(0,140,255,.12);

filter:blur(90px);

border-radius:50%;

z-index:0;
}

/* ====================================
   CONTENT LAYER
==================================== */

.login-header,
.login-form,
.login-footer,
.login-error{

position:relative;

z-index:2;
}

/* ====================================
   LOGIN HEADER
==================================== */

.login-header{

text-align:center;

margin-bottom:40px;
}

.login-header .mini-title{

display:inline-block;

font-size:12px;

font-weight:700;

letter-spacing:4px;

text-transform:uppercase;

color:#00d8ff;

margin-bottom:18px;
}

.login-header h1{

font-size:52px;

font-weight:800;

line-height:1.1;

color:#fff;

margin-bottom:18px;
}

.login-header p{

font-size:17px;

line-height:1.7;

color:rgba(255,255,255,.68);
}

/* ====================================
   ERROR BOX
==================================== */

.login-error{

background:rgba(255,60,60,.08);

border:1px solid rgba(255,60,60,.18);

padding:18px 20px;

border-radius:16px;

font-size:15px;

font-weight:600;

color:#ff7070;

margin-bottom:25px;
}

/* ====================================
   FORM
==================================== */

.login-form{

display:flex;

flex-direction:column;

gap:24px;
}

/* ====================================
   FORM GROUP
==================================== */

.form-group{

display:flex;

flex-direction:column;

gap:12px;
}

.form-group label{

font-size:14px;

font-weight:700;

letter-spacing:.5px;

color:#fff;
}

/* ====================================
   INPUTS
==================================== */

.form-group input{

width:100%;

height:62px;

padding:0 22px;

background:rgba(255,255,255,.04);

border:1px solid rgba(255,255,255,.08);

border-radius:18px;

font-size:16px;

color:#fff;

outline:none;

transition:.3s ease;
}

.form-group input::placeholder{

color:rgba(255,255,255,.35);
}

.form-group input:focus{

border-color:#00d8ff;

background:rgba(255,255,255,.06);

box-shadow:0 0 20px rgba(0,216,255,.18);
}

/* ====================================
   LOGIN BUTTON
==================================== */

.login-btn-submit{

width:100%;

height:64px;

border:none;

border-radius:20px;

background:linear-gradient(
135deg,
#00d8ff,
#009dff
);

font-size:17px;

font-weight:800;

color:#000;

cursor:pointer;

margin-top:10px;

transition:.35s ease;

box-shadow:
0 0 25px rgba(0,216,255,.28);
}

.login-btn-submit:hover{

transform:translateY(-4px);

box-shadow:
0 0 40px rgba(0,216,255,.5);
}

/* ====================================
   FOOTER
==================================== */

.login-footer{

margin-top:28px;

text-align:center;
}

.login-footer a{

font-size:15px;

font-weight:600;

color:#00d8ff;

text-decoration:none;

transition:.3s ease;
}

.login-footer a:hover{

color:#fff;
}

/* ====================================
   RESPONSIVE
==================================== */

@media(max-width:768px){

.login-page{

padding:120px 18px 60px;
}

.login-card{

padding:40px 25px;

border-radius:26px;
}

.login-header h1{

font-size:40px;
}

.form-group input{

height:58px;

font-size:15px;
}

.login-btn-submit{

height:60px;

font-size:16px;
}
}

@media(max-width:480px){

.login-header h1{

font-size:34px;
}

.login-header p{

font-size:15px;
}

.login-card{

padding:35px 20px;
}
}