/* Reset */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{
    background: var(--bg);
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:100vh;
    padding:20px;
    color: var(--text);
}

.container{
    width:100%;
    max-width:400px;
    text-align:center;
}

.logo{
    font-size:42px;
    font-weight:700;
    color:#2563eb;
    margin-bottom:45px;
    letter-spacing:1px;
}

form{
    display:flex;
    flex-direction:column;
}

input{
    width:100%;
    height:58px;
    margin-bottom:16px;
    padding:0 18px;
    font-size:17px;
    border:1px solid var(--input-border);
    border-radius:18px;
    outline:none;
    transition:.25s;
    background: var(--input-bg);
    color: var(--text);
}

input::placeholder {
    color: var(--muted);
}

input:focus{
    border-color:#2563eb;
    box-shadow:0 0 0 3px rgba(37,99,235,.15);
}

button{
    width:100%;
    height:56px;
    border:none;
    border-radius:28px;
    background:#2563eb;
    color:#fff;
    font-size:18px;
    font-weight:600;
    cursor:pointer;
    transition:.25s;
    margin-top:8px;
}

button:hover{
    background:#1d4ed8;
}

button:active{
    transform:scale(.98);
}

.error{
    color:#e11d48;
    margin-top:14px;
    font-size:14px;
    min-height:18px;
}

.bottom{
    margin-top:35px;
    font-size:15px;
    color: var(--muted);
}

.bottom a{
    color:#2563eb;
    text-decoration:none;
    font-weight:600;
}

.bottom a:hover{
    text-decoration:underline;
}

/* Mobile */
@media(max-width:480px){

    .logo{
        font-size:38px;
        margin-bottom:35px;
    }

    input{
        height:55px;
        font-size:16px;
    }

    button{
        height:55px;
        font-size:17px;
    }
}




.password-wrapper {
    position: relative;
    width: 100%;
}

.password-wrapper input {
    width: 100%;
    box-sizing: border-box;
    padding-right: 45px;
}

.toggle-password {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
    cursor: pointer;

    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--password-icon);
}

.toggle-password svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
}   