        :root {
            --card-bg: rgba(255, 255, 255, 0.10);
            --input-bg: rgba(255, 255, 255, 0.06);
            --accent: #ffffff;
        }

        html,
        body {
            height: 100%;
        }

        /* full-screen background image (replace path with your image) */
        .bg-image {
            position: fixed;
            inset: 0;
            background-image: url("/assets/images/new-unjani.jpg");
            /* <- change to your image path */
            background-size: cover;
            background-position: center;
            z-index: -2;
            filter: brightness(0.6);
        }

        /* optional subtle overlay to darken image */
        .bg-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0, 0, 0, 0.25);
            z-index: -1;
        }

        /* centered login card */
        .login-card {
            background: var(--card-bg);
            border-radius: 12px;
            padding: 2rem;
            min-width: 320px;
            max-width: 420px;
            width: 100%;
            color: var(--accent);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
            backdrop-filter: blur(6px);
        }

        .form-control {
            background: var(--input-bg);
            border: none;
            color: var(--accent);
        }

        .form-control::placeholder {
            color: rgba(255, 255, 255, 0.6);
        }

        .form-control:focus {
            box-shadow: none;
            border-color: rgba(255, 255, 255, 0.18);
        }

        .btn-primary {
            background: rgba(255, 255, 255, 0.14);
            border: none;
            color: var(--accent);
        }

        .muted {
            color: rgba(255, 255, 255, 0.85);
        }

        a.link-light {
            color: #fff;
            opacity: 0.95;
            text-decoration: underline;
        }

        @media (max-width: 380px) {
            .login-card {
                padding: 1.25rem;
                min-width: 260px;
            }
        }