.auth-login-page {
    background:
        radial-gradient(circle at top, rgba(255,0,0,.18), transparent 60%),
        linear-gradient(120deg, #050505, #0a0000, #050505);
    animation: bgMove 12s ease infinite;
}

@keyframes bgMove {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.auth-login-main {
    min-height: calc(100vh - 200px);
    display: flex;
    justify-content: center;
    align-items: center;
}

.auth-login-card {
    width: 420px;
    padding: 40px;
    background: rgba(15,15,15,.95);
    border-radius: 22px;
    box-shadow: 0 0 60px rgba(255,0,0,.35);
}

.auth-login-title {
    text-align: center;
    color: #ff2b2b;
    font-size: 32px;
}

.auth-input {
    width: 100%;
    height: 48px;
    margin: 12px 0;
    border-radius: 12px;
    border: 1px solid #222;
    background: #0a0a0a;
    color: #fff;
    padding: 0 14px;
}

.auth-btn {
    display: block;
    width: 100%;
    margin-top: 14px;
    padding: 14px;
    border-radius: 14px;
    text-align: center;
    text-decoration: none;
    font-weight: 600;
}

.auth-btn--primary {
    background: linear-gradient(135deg, #ff1a1a, #a30000);
    color: #fff;
}

.auth-btn--ghost {
    border: 1px solid #333;
    color: #ccc;
}

.auth-social {
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.auth-social-btn {
    flex: 1;
    padding: 12px;
    border-radius: 12px;
    text-align: center;
    color: #fff;
}

.social-login-row {
    display: flex;
    gap: 16px;
    justify-content: center;
}

.social-btn {
    padding: 14px 22px;
    border-radius: 10px;
    font-weight: 600;
    text-decoration: none;
    color: #fff;
    min-width: 160px;
    text-align: center;
}

.social-btn.discord { background: #5865F2; }
.social-btn.twitch  { background: #9146FF; }
.social-btn.steam   { background: #171A21; }


/* ===============================
   2FA MODAL (ULTRA CLEAN)
================================ */

.auth-2fa-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.65);
    backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;

    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
}

.auth-2fa-overlay.active {
    opacity: 1;
    pointer-events: all;
}

.auth-2fa-card {
    width: 380px;
    padding: 38px;
    background: rgba(15,15,15,.96);
    border-radius: 22px;
    box-shadow: 0 0 60px rgba(255,0,0,.4);
    text-align: center;
    animation: auth2faIn .25s ease;
}

@keyframes auth2faIn {
    from {
        transform: scale(.95);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

.auth-2fa-icon {
    font-size: 36px;
    margin-bottom: 8px;
}

.auth-2fa-title {
    color: #ff2b2b;
    margin-bottom: 6px;
}

.auth-2fa-hint {
    font-size: 14px;
    color: #aaa;
    margin-bottom: 22px;
}

.auth-2fa-input {
    text-align: center;
    font-size: 22px;
    letter-spacing: 6px;
}
