       /* Fondo con degradado suave */
        body.login-bg {
            min-height: 100vh;
            margin: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            background: linear-gradient(135deg, #0f172a, #1d4ed8);
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        }

        .login-card {
            max-width: 420px;
            width: 100%;
            border-radius: 1rem;
            overflow: hidden;
            box-shadow: 0 20px 45px rgba(15, 23, 42, 0.35);
            background: #ffffff;
        }

        .login-card-header {
            padding: 1.75rem 1.75rem 1rem 1.75rem;
            text-align: center;
            border-bottom: 1px solid rgba(148, 163, 184, 0.25);
        }

        .login-logo {
            max-width: 190px;
            margin-bottom: 0.75rem;
        }

        .login-title {
            font-size: 1.25rem;
            font-weight: 600;
            color: #0f172a;
            margin-bottom: .25rem;
        }

        .login-subtitle {
            font-size: .9rem;
            color: #6b7280;
        }

        .login-card-body {
            padding: 1.75rem;
        }

        .form-label {
            font-size: .85rem;
            font-weight: 500;
            color: #374151;
        }

        .form-control {
            border-radius: .6rem;
            border-color: #cbd5f5;
        }

        .form-control:focus {
            border-color: #1d4ed8;
            box-shadow: 0 0 0 .15rem rgba(37, 99, 235, .25);
        }

        .btn-login {
            border-radius: .7rem;
            font-weight: 600;
            letter-spacing: .02em;
            padding: .65rem 1rem;
        }

        .login-footer-text {
            font-size: .78rem;
            color: #9ca3af;
            text-align: center;
            padding: 0 1.75rem 1.5rem 1.75rem;
        }

        .login-footer-text span {
            color: #6b7280;
        }