

/* Form area */
.login-form-area {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1.75rem;
    max-width: 480px;
}

.login-field-group {
    display: flex;
    flex-direction: column;
    gap: .1rem;
}

.login-field-label {
    font-weight: bold;
    letter-spacing: .10em;
}

.login-input {
    background-color: var(--night-rain);
    border: none;
    border-left: 4px solid var(--alpha-blue);
    border-radius: 0 8px 8px 0;
    color: var(--arctic-snow);
    padding: .3rem 1rem;
    font-family: inherit;
    font-size: 1rem;
    width: 100%;
    outline: none;
    transition: border-color .2s, background-color .2s;
}

.login-input:focus {
    border-left-color: var(--radioactive);
    background-color: var(--night-cloud);
}

.login-input::placeholder {
    color: var(--beta-blue);
    opacity: .5;
}

/* Status line */
.login-status {
    font-size: .8rem;
    font-weight: bold;
    letter-spacing: .1em;
    min-height: 1.2rem;
    color: var(--sunset-red);
}


/* Buttons */
.login-actions {
    display: flex;
    gap: 1rem;
}

.login-btn-primary,
.login-btn-secondary {
    font-family: inherit;
    font-weight: bold;
    font-size: .85rem;
    letter-spacing: .1em;
    padding: .55rem 1.5rem;
    border-radius: 100vmax;
    border: none;
    cursor: pointer;
    transition: filter .15s;
}

.login-btn-primary {
    background-color: var(--alpha-blue) !important;
    color: var(--arctic-ice) !important;
}
.login-btn-secondary {
    background-color: transparent !important;
    color: var(--alpha-blue) !important;
    border: 2px solid var(--alpha-blue) !important;
}

.login-btn-primary:hover,
.login-btn-secondary:hover {
    filter: brightness(115%);
}

.login-btn-primary:active,
.login-btn-secondary:active {
    filter: brightness(85%);
}

@media (max-width: 525px) {
    .login-ident { width: 40px; }
    .ident-1 { height: 36px; }
}
