.login-container {
    max-width: 400px;
    padding: 40px;
}

.logo {
    text-align: center;
    margin-bottom: 30px;
}

.logo h2 {
    margin: 0;
    color: #333;
    font-size: 28px;
    font-weight: bold;
}

.logo p {
    margin: 10px 0 0 0;
    color: #666;
    font-size: 18px;
    text-align: center;
}

.logo img {
    height: 60px;
    width: auto;
    display: block;
    margin: 15px auto 5px auto;
}

.form-group {
    margin-bottom: 20px;
}

.btn {
    padding: 15px 20px;
    width: 100%;
}

.error {
    background: #fee;
    color: #c33;
    border-left: 4px solid #e74c3c;
}

.info {
    background: #f0f8ff;
    color: #2c5aa0;
    padding: 15px;
    border-radius: 8px;
    margin-top: 20px;
    font-size: 14px;
    border-left: 4px solid #3498db;
}

.password-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.password-wrapper input {
    padding-right: 44px;
}

.toggle-visibility {
    position: absolute;
    right: 10px;
    background: transparent;
    border: none;
    cursor: pointer;
    width: 32px;
    height: 32px;
    font-size: 0;
    line-height: 1;
    color: #9aa0a6;
    padding: 4px;
}

.toggle-visibility::before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    background: center / contain no-repeat url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239aa0a6'><path d='M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5C21.27 7.61 17 4.5 12 4.5zm0 12a4.5 4.5 0 1 1 0-9 4.5 4.5 0 0 1 0 9zm0-7a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5z'/></svg>");
}

.toggle-visibility.is-visible::before {
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%239aa0a6'><path d='M2.1 4.93 3.5 3.5l17.9 17.9-1.4 1.43-3.02-3.02A12.63 12.63 0 0 1 12 20c-5 0-9.27-3.11-11-7.5a12.53 12.53 0 0 1 3.1-4.6L2.1 4.93zm7.77 7.77a2.5 2.5 0 0 0 3.24 3.24l-3.24-3.24zm2.16-3.6 4.57 4.57a4.5 4.5 0 0 0-4.57-4.57zm-2.1-3.72A9.39 9.39 0 0 1 12 4.5c5 0 9.27 3.11 11 7.5-.52 1.31-1.3 2.51-2.28 3.54l-1.43-1.43c.77-.83 1.4-1.79 1.82-2.85C19.61 8.74 15.99 6.5 12 6.5c-.78 0-1.55.08-2.28.23l-1.79-1.15z'/></svg>");
}

.toggle-visibility:focus {
    outline: none;
}
