@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* =====================================
   RESET
===================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body{

    width:100%;
    height:100%;

}

body{

    font-family:'Inter',sans-serif;

    background:#FFFFFF;

    display:flex;

    justify-content:center;

    align-items:center;

    overflow:hidden;

    position:relative;

}

/* =====================================
   BACKGROUND
===================================== */

.background{

    position:fixed;

    inset:0;

    overflow:hidden;

    z-index:1;

    background:#FFFFFF;

}

/* watermark logo */

.bg-logo{

    display:none;

}

/* garis lengkung */

.bg-wave{

    display:none;

}

.bg-wave::before,
.bg-wave::after{

    display:none;

}

/* pattern grid */

.bg-pattern{

    display:none;

}

/* dot */

.dot{

    display:none;

}

.dot-1{

    right:150px;

    top:130px;

}

.dot-2{

    right:190px;

    top:170px;

}

.dot-3{

    right:230px;

    top:210px;

}

/* blur */

.blur{

    display:none;

}

.blur-1,
.blur-2{

    display:none;

}

/* =====================================
   LOGIN
===================================== */

.login-wrapper{

    position:relative;

    z-index:5;

}

.login-card{

    width:400px;

    background:#ffffff;

    border-radius:26px;

    padding:0px 18px;

    border:1px solid #E5E7EB;

    border-top:3px solid #CDA53A;

    box-shadow:

    0 14px 30px rgba(15,23,42,.06);

    animation:fadeUp .6s ease;

}

/* =====================================
   BRAND
===================================== */

.brand{

    text-align:center;

    margin-bottom:18px;

}

.logo-box img{

    width:120px;

    transition:.25s;

}

.logo-box img:hover{

    transform:scale(1.04);

}

.brand-title{

    margin-top:6px;

    font-size:28px;

    font-weight:800;

    letter-spacing:2px;

    color:#0F2D47;

}

.brand-subtitle{

    margin-top:4px;

    font-size:13px;

    color:#334155;

    line-height:22px;

}
/* =====================================
   TITLE
===================================== */

.title{

    text-align:center;

    font-size:34px;

    font-weight:800;

    color:#0F2D47;

}

.subtitle{

    text-align:center;

    margin-top:6px;

    margin-bottom:22px;

    color:#475569;

    font-size:15px;

}

/* =====================================
   FORM
===================================== */

.form-group{

    margin-bottom:18px;

}

.form-group label{

    display:block;

    margin-bottom:8px;

    font-size:14px;

    font-weight:600;

    color:#334155;

}

.input-group{

    display:flex;

    align-items:center;

    height:56px;

    border:1px solid #E5E7EB;

    border-radius:14px;

    background:#ffffff;

    transition:.25s;

}

.input-group:hover{

    border-color:#0F2D47;

}

.input-group:focus-within{

    border-color:#CDA53A;

    box-shadow:0 0 0 4px rgba(205,165,58,.12);

}

.icon{

    width:52px;

    display:flex;

    justify-content:center;

    color:#94a3b8;

}

.input-group:focus-within .icon{

    color:#0F2D47;

}

.input-group input{

    flex:1;

    border:none;

    outline:none;

    background:transparent;

    height:100%;

    font-size:15px;

    color:#0f172a;

    font-family:'Inter',sans-serif;

}

.input-group input::placeholder{

    color:#94a3b8;

}

/* =====================================
   PASSWORD TOGGLE
===================================== */

.password-toggle{

    width:46px;

    height:46px;

    margin-right:6px;

    border:none;

    background:none;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#64748b;

    cursor:pointer;

    border-radius:10px;

    transition:.2s;

}

.password-toggle:hover{

    background:#eff6ff;

    color:#2563eb;

}

/* =====================================
   OPTION
===================================== */

.options{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin:18px 0;

}

.remember{

    display:flex;

    align-items:center;

    gap:8px;

    font-size:14px;

    color:#64748b;

}

.remember input{

    accent-color:#2563eb;

}

.forgot{

    text-decoration:none;

    color:#CDA53A;

    font-size:14px;

    font-weight:600;

}

.forgot:hover{

    color:#B68B2D;

    text-decoration:underline;

}

/* =====================================
   BUTTON
===================================== */

.btn-login{

    width:100%;

    height:56px;

    border:none;

    border-radius:14px;

    background:#0F2D47;

    color:#ffffff;

    font-size:16px;

    font-weight:700;

    cursor:pointer;

    transition:.25s;

}

.btn-login:hover{

    transform:translateY(-2px);

    background:#12385A;

    box-shadow:0 18px 35px rgba(18,56,90,.18);

}

/* =====================================
   FOOTER
===================================== */

.footer{

    margin-top:20px;

    text-align:center;

    color:#64748b;

    font-size:13px;

    line-height:24px;

}

/* =====================================
   ANIMATION
===================================== */

@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(25px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}

/* =====================================
   RESPONSIVE
===================================== */

@media(max-width:576px){

.login-card{

    width:92%;

    padding:30px;

}

.logo-box img{

    width:95px;

}

.brand-title{

    font-size:24px;

}

.title{

    font-size:28px;

}

}