:root {
    --login-dune: #e2d7c1;
    --login-dune-light: #f4efe5;
    --login-mystic: #70746c;
    --login-mystic-dark: #51564f;
    --login-ink: #2f312e;
    --login-line: #ddd7cb;
}

.login-page {
    background:
        radial-gradient(circle at 12% 15%, rgba(226, 215, 193, .72), transparent 28%),
        radial-gradient(circle at 88% 85%, rgba(112, 116, 108, .15), transparent 30%),
        #faf8f3;
    color: var(--login-ink);
    min-height: 100vh;
}

.login-card {
    border: 1px solid var(--login-line);
    border-radius: 16px;
    box-shadow: 0 18px 42px rgba(63, 67, 61, .16);
    overflow: hidden;
}

.login-card-header {
    background: linear-gradient(135deg, var(--login-mystic-dark), var(--login-mystic));
    border: 0;
    color: #fff;
    letter-spacing: .02em;
    padding: .8rem 1rem;
}

.login-card .card-body { padding: 1.25rem; }
.login-card .form-label { color: var(--login-mystic-dark); font-weight: 700; }

.login-card .form-control {
    background-color: #faf8f3;
    border: 1px solid var(--login-line);
    border-radius: 10px;
    color: var(--login-ink);
    min-height: 42px;
}

.login-card .form-control:focus {
    background-color: #fff;
    border-color: var(--login-mystic);
    box-shadow: 0 0 0 .22rem rgba(112, 116, 108, .16);
}

.login-card input:-webkit-autofill,
.login-card input:-webkit-autofill:hover,
.login-card input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #faf8f3 inset;
    -webkit-text-fill-color: var(--login-ink);
}

.login-submit {
    background: linear-gradient(135deg, var(--login-mystic), var(--login-mystic-dark));
    border: 0;
    border-radius: 10px;
    box-shadow: 0 8px 18px rgba(81, 86, 79, .22);
    color: #fff;
    font-weight: 700;
    min-height: 42px;
}

.login-submit:hover,
.login-submit:focus,
.login-submit:active {
    background: var(--login-mystic-dark) !important;
    color: #fff !important;
}

.login-submit:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(112, 116, 108, .24);
}

.login-card .alert-danger {
    background: var(--login-dune-light);
    border-color: var(--login-dune);
    color: var(--login-mystic-dark);
}
