body {
    font-family: Arial, sans-serif;
    display: flex;
    align-items: center;
    height: 100dvh;
    margin: 0;
    overflow: hidden;
    background: radial-gradient(circle at top right, #94B9FF, transparent 95%),
        radial-gradient(circle at bottom left, #95D4FF, transparent 99%);
    /*background: linear-gradient(135deg, #95D4FF, #94B9FF);*/
}

#container {
    background: rgba(255, 255, 255, 0.15);
    margin: 0 auto;
    max-height: 82dvh;
    width: clamp(15rem, 75vw, 35rem);
    padding: 20px;
}

#frm-login {
    font-size: 16px;
}

.title {
    color: #093682;
    display: block;
    width: 100%;
    text-align: center;
    font-size: clamp(1.5rem, 10dvh, 3rem);
}

.subtitle {
    color: #364458;
    display: block;
    font-size: clamp(1rem, 7.5dvh, 2rem);
    font-weight: bold;
    text-align: center;
}

.title,
.subtitle {
    margin: 0px 0px clamp(0.5rem, 5dvh, 2rem) 0px;
}

::placeholder {
    color: #888;
    font-style: italic;
}

.input-container,
.submit {
    width: clamp(5rem, 75vw, 30rem);
}

.input-container {
    margin: 0 auto;
    margin-bottom: clamp(0.7rem, 2dvh, 1.5rem);
    position: relative;
    text-align: center;
}

.input-container input {
    width: calc(100% - 46.6px);
    padding: 10px 10px 10px 35px;
    border-radius: 8px;
    border: 1px solid #ccc;
}

.input-container .icon {
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    font-size: 16px;
    color: #888;
}

.submit {
    background: linear-gradient(90deg, #6a11cb, #2575fc);
    border: none;
    border-radius: 10px;
    color: white;
    cursor: pointer;
    display: block;
    font-size: 16px;
    margin: 0 auto;
    padding: 10px 0px;
}

/*
#frm-login label, #frm-login input, #frm-login button {
    display: block;
    box-sizing: border-box;
    padding: 0px;
    font-size: clamp(1.6rem, 1.8dvh, 2.2rem);
}

#frm-login input {
    border: none;
    border-radius: 10px;
    padding: 5px;
    height: clamp(2rem, 10dvh, 3rem);
}

#frm-login input:focus {
    border: 1px solid rgb(78, 78, 78);
    outline: none;
    box-shadow: 0 0 0 1px #666;
}

#frm-login button {
    color: white;
    background-color: rgb(23, 93, 220);
    border: 1px solid rgb(118, 118, 118);
    margin-top: clamp(0.1rem, 1dvh, 1.3rem);
    padding: 5px;
    border-radius: 5px;
    height: clamp(2.4rem, 10dvh, 3rem);
}

#frm-login button:focus {
    background-color: rgb(85, 129, 211);
    border: 1px solid rgb(23, 93, 220);
    outline: none;
    box-shadow: 0 0 0 1px #666;
}
*/

#message {
    margin-top: 20px;
}

#message label {
    display: block;
    font-weight: bold;
    font-size: 18px;
    margin-top: 10px;
    color: red;
    text-align: center;
}

@media (min-width: 768px) {
    #frm-login input {
        font-size: 22px;
    }
}