        .auth-body {
            background: radial-gradient(circle at top left, rgba(37, 99, 235, 0.10), transparent 35%), radial-gradient(circle at bottom right, rgba(14, 116, 144, 0.08), transparent 35%), #f4f7fb;
            min-height: 100vh;
        }

        .auth-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }

        .auth-shell__inner {
            width: 100%;
        }

        .auth-card-wrap {
            width: 100%;
            max-width: 440px;
            margin: 0 auto;
        }

        .auth-card {
            border-radius: 22px;
            overflow: hidden;
            box-shadow: 0 1rem 2.5rem rgba(15, 23, 42, 0.08) !important;
            background: rgba(255,255,255,0.97);
            backdrop-filter: blur(4px);
        }

            .auth-card .card-body {
                padding: 1.8rem;
            }

        .auth-brand {
            font-size: 0.88rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.10em;
            color: #2563eb;
        }

        .auth-subtitle {
            line-height: 1.45;
            max-width: 320px;
            margin: 0 auto;
        }

        .auth-submit-btn {
            min-height: 46px;
            font-weight: 600;
            border-radius: 12px;
        }

        .auth-link {
            color: #2563eb;
            text-decoration: none;
        }

            .auth-link:hover {
                text-decoration: underline;
            }

        .auth-footer {
            border-top: 1px solid rgba(15, 23, 42, 0.06);
            padding-top: 1rem;
        }

        @media (max-width: 575.98px) {
            .auth-shell {
                padding: 0.9rem;
            }

            .auth-card .card-body {
                padding: 1.15rem;
            }

            .auth-brand {
                font-size: 0.80rem;
            }

            .auth-subtitle {
                font-size: 0.92rem;
            }
        }
    
