.login-body {
    min-height: 100vh;
    margin: 0;
    font-family: system-ui,-apple-system,Segoe UI,sans-serif;
    background: radial-gradient(circle at 20% 10%,rgba(255,220,120,.18),transparent 55%),radial-gradient(circle at 80% 90%,rgba(70,140,255,.18),transparent 55%),#050914;
    color: #fff;
    display: grid;
    place-items: center
}

.login-shell {
    width: min(520px,92vw);
    padding: 18px
}

.login-card {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 22px;
    padding: 18px;
    box-shadow: 0 24px 60px rgba(0,0,0,.55)
}

.brand {
    font-weight: 1000;
    letter-spacing: .18em;
    text-transform: uppercase;
    font-size: 18px;
    color: #ffeaa6
}

.sub {
    opacity: .85;
    margin-top: 6px;
    margin-bottom: 14px
}

.status {
    opacity: .75;
    font-size: 13px;
    margin-bottom: 10px
}

.form {
    display: flex;
    flex-direction: column;
    gap: 10px
}

input {
    padding: 12px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(0,0,0,.25);
    color: #fff;
    outline: 0
}

input:focus {
    border-color: rgba(255,220,120,.5);
    box-shadow: 0 0 0 3px rgba(255,220,120,.12)
}

.row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.btn {
    padding: 12px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.06);
    color: #fff;
    cursor: pointer;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase
}

.btn.main {
    border-color: rgba(255,220,120,.35);
    background: rgba(255,220,120,.18)
}

.btn:hover {
    filter: brightness(1.08)
}

.btn:active {
    transform: translateY(1px)
}

.meta {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap
}

.link {
    border: 0;
    background: 0 0;
    color: #ffeaa6;
    cursor: pointer;
    text-decoration: underline;
    padding: 0
}

.err {
    color: #ff9d9d;
    font-size: 12px
}
